프로그래밍의 기본기
프로그래밍의 다양한 분야 탐구
프로그래밍 기본기 - 객체 지향 프로그래밍, 알고리즘, 자료구조 - 기본기가 가장 중요하며 잘 갖추어진다면 새로운 지식을 익힐때 쉽게 익히기 쉽다.
소프트웨어 공학(=소프트웨어로 제품/서비스를 만드는 방법) - 기획(기획자가 필요한 것을 문서로 작성)-개발(문서를 받아 프로그램을 제작)-테스트(프로그램이 잘 작동되는지 확인)-배포(프로그램을 사용자가 사용할 수 있도록 공개)-유지/보수(오류 개선 및 추가적인 기능 개발)
프로세스 관리 - 폭포수(waterfall)-각 단계를 한번에 완벽하게 끝내기 힘들수 있음, 애자일(agile)-결과물을 만들어 미리 확인하고 수정하며 진행. 쪼개서 각각 만들어서 테스트해보는 것. 중간중간 사용하면서 발전시키기 때문에 기능변경이 유연함. 예시) scrum, kanban
테스트 프로세스 - 버그bug(그레이스 하퍼) 버그 관리 툴 - Jira, asana, trella 버그가 발생시 이슈라고 부르며 이슈의 상태를 나타낼때 open - in-progress-resolved-closed-reopen
버전 관리 - git - 버전관리를 하는 소프트웨어, git-hub - git을 이용해 코드를 저장하는 온라인 저장공간.
트랜드를 읽는 능력
프로그래밍은 선택의 연속 - 프레임워크와 언어를 잘 선택해야 한다.
프로그래밍의 트랜드는 얼마나 사람들이 활발히 사용하는가에 결정된다. stackoverflow, quora, redmonk
인정받는 기술, 공유의 문화 - stackshare - 이곳에서 자료를 공유. facebook-react, oracle-java , google - go, angularjs , apple - swift
프로그래밍 분야에서 인기있는 기술들은 계속해서 변화하고 있습니다. 따라서, 새로운 기술 및 트렌드를 탐색하고 학습하는 능력은 매우 중요합니다. 최근에는 클라우드 컴퓨팅 기술과 인공지능, 빅데이터 분석 기술이 대세입니다.
이 중에서도, 클라우드 컴퓨팅 서비스인 AWS, GCP, Azure 등과 관련된 기술들은 매우 중요하며, 이에 대한 학습과 경험을 쌓는 것이 좋습니다. 또한, 최근에는 웹 개발 프레임워크인 React, AngularJS, Vue.js 등이 많이 사용되고 있습니다.
이를 활용하여 실제 서비스를 개발하는 것도 좋은 경험이 될 수 있습니다. 또한, 모바일 앱 개발 분야에서는 React Native, Flutter 등이 인기가 있으며, 이 분야도 활발하게 발전하고 있습니다. 또한, 보안 분야에서는 취약점 진단 및 보완을 위한 프로그램이 필요해지는 추세입니다.
따라서, 보안 기술과 관련된 지식을 학습하는 것도 좋은 방법입니다. 마지막으로, 오픈소스 프로젝트에 기여하는 것도 좋은 방법 중 하나입니다. 오픈소스 프로젝트에 참여하면 다른 개발자들과 함께 일하며 경험과 지식을 공유할 수 있습니다. 이러한 경험은 나중에 프로젝트를 진행할 때 매우 유용할 것입니다.
'프로그래밍' 카테고리의 다른 글
동기성 비동기성 차이 (0) | 2023.12.03 |
---|---|
zsh: command not found: flutter (0) | 2023.11.05 |
코딩할 때, !이거는 무슨 의미였지? (0) | 2023.07.04 |
소프트웨어 이해하기 (0) | 2023.06.12 |