html javascript css c# coding
프로그래밍 공부
- 출처: https://www.youtube.com/watch?v=qe2FJR7KCeE
한국 기준 추천 웹사이트
- 백준 온라인 져지 (https://www.acmicpc.net)
- 프로그래머스 (https://programmers.co.kr)
- 백준이 더 오래됐고 자료가 더 많은 반면에 프로그래머스는 더 사용자 편의성이 높고 정보가 좀 더 최신 정보가 있는것 같아요
영어 기준 추천 웹사이트
- Leetcode (http://leetcode.com)
- Careercup (https://www.careercup.com)
- Geeks for Geeks (https://www.geeksforgeeks.org)
- Glassdoor Interview section for specific companies (https://www.glassdoor.com)
공부법-취직
- 언어1개, 알고리즘, 자료구조
자료구조
- 코딩을 할때 자료를 담을 수 있는 객체를 자료구조라함
- list, array, hash table, linked list, stack, queue
- 자료구조를 잘 못 쓰면 코드가 너무 느리거나 안돌아갈 수 있음 (구현이 불가능 할 수 있다)
알고리즘
- 어떠한 인풋을 넣었을때 일정한 아웃풋이 동일한 방식으로 나오는 프로세스
- binary search
코딩테스트
- 자료구조 알고리즘을 테스트
- 추천도서: Cracking the coding interview
- 추천언어: 파이썬
하지 말아야할 일
- 특정 언어 마스터
- 특정 프레임워크 마스터
- 포트폴리오 시간 대부분 할애
공부법-사업
- 언어1개, 백엔드, 프론트엔드, 문제 해결능력
- MVP: Minimum viable Product. 최소한의 돌아가는 서비스
백엔드
서버
- 프레임워크 : 반복되는 작업을 도와주는 간편한 툴
- 파이썬 (Flask, Django)
- Javascript (NodeJS)
DB
- PostgreSQL
- MySQL
- MongoDB
- ORM (SQL 언어를 올라도 DB와 서버 연결을 쉽게 할수 있게 해줌)
프론트엔드
- 레이아웃 : HTML
- 스타일 : CSS
- 인터랙션 : JavaScript
- 프레임워크 : 리액트, 앵귤러, NextJS
모바일
네이티브
- IOS: Shift, Objective-c
- Android: Java, Kotlin
프레임워크
- JavaScript + 리액트 네이티브
- Dart + 플러터
- OS별 언어가 갈리지 않는다는 장점
백준 온라인 저지 (Baekjoon Online Judge)
- https://www.acmicpc.net/
- 백준 온라인 저지는 대한민국 최초의 알고리즘 문제 풀이 사이트입니다. 다양한 난이도와 주제의 문제들을 제공하며, C++, Java, Python 등 다양한 언어를 지원합니다.
프로그래머스(Programmers)
- https://programmers.co.kr/
- 프로그래머스는 코딩테스트를 준비하는 개발자들을 위한 온라인 교육 사이트입니다. 프로그래머스에서는 다양한 주제의 문제들을 제공하며, 알고리즘 뿐만 아니라 SQL, 데이터 분석, 인공지능 등 다양한 분야의 문제를 풀어볼 수 있습니다.
리트코드(LeetCode)
- https://leetcode.com/
- 리트코드는 알고리즘 문제를 제공하는 미국의 온라인 교육 플랫폼입니다. 대부분의 문제가 영어로 제공되지만, 다양한 주제와 난이도의 문제들을 제공하며, 다양한 언어를 지원합니다.
해커랭크(HackerRank)
- https://www.hackerrank.com/
- 해커랭크는 알고리즘과 데이터 구조, 수학 등 다양한 분야의 문제를 제공하는 온라인 교육 사이트입니다. 문제의 난이도와 유형이 다양하며, 다양한 언어를 지원합니다.
코드포스(Codeforces)
- https://codeforces.com/
- 코드포스는 알고리즘 대회를 주최하며, 대회 이외에도 다양한 주제와 난이도의 문제를 제공하는 온라인 교육 사이트입니다. 대회에서는 랭킹이 제공되며, 문제의 난이도와 유형이 다양합니다.
알고리즘
- A set of rules for solving a problem in a finite number of steps
-
알고리즘 - 유한한 단계 안에 문제를 해결할 수 있는 규칙의 집합
- https://www.youtube.com/watch?v=XU9E8A_j05g
- 학교 교육에서는
- 풀수있는 문제나 풀수 없는 문제가 있고
- 그것에 대한 대답에 정답이나 오답이 있다.
- 그런데 실제는 한가지 문제에 대해서도 다양한 답이 있다.