개발 블로그
[TIL] Python 2일차
SSAFY/TIL 2024. 1. 16. 21:48

https://w-hand.tistory.com/130 Sequence Type Sequence Type 이란? 여러 요소를 가지며 요소 간의 순서가 있는 자료형을 의미한다. 대표적으로 str, list, tuple, range 가 있으며 이는 또 내부 요소를 변경할 수 있는지에 따라 가변 객체 : list 불변 객 w-hand.tistory.com https://w-hand.tistory.com/131 Non Sequence Type - set, dictionary Non Sequence Type 여러 개의 요소를 가지고 있는 Collection 종류 중 순서가 없는 Non Sequence Type 에는 대표적으로 set 과 dictionary 가 있다. Set set 은 '집합'을 의미하며 요소들의 ..

[TIL] Python 1일차
SSAFY/TIL 2024. 1. 16. 21:46

배운 것 Python 의 다양한 데이터 타입 중 숫자를 나타내는 Numeric Type 과 문자열을 나타내는 Text Sequence Type(=str) 에 대해 배웠다. 컴퓨터는 2진수에 기반하다보니 소수를 정확하게 표현하는 데에 어려움이 있는데 이로 인해 예상치 못한 결과가 나올 때가 있다. 이를 Floating Point Error 라고 하는데 이 문제를 해결하는 간단한 방법에 대해서도 배울 수 있었다. # 작은 수 더해서 기대하는 결과 얻기 print(round(3.15, 1)) # 3.1 print(round(3.15+1e-4, 1)) # 3.2 보통 오전에는 강의를 듣고 오후에는 담임강사님의 짧은 복기 강의와 함께 자습을 하는데 이런 유용한 팁들은 잊어버리지 않도록 연습을 많이 해야겠다.

[WIL] SSAFY 2주차 회고
SSAFY/WIL 2024. 1. 14. 13:16

배운 것 1. Python 기초 2. Git & Github 사용법 3. 게이미피케이션을 통한 코딩의 즐거움 이번 주를 끝으로 SSAFY 에서 진행하는 스타트캠프가 끝났다. 이번 주의 시작은 로봇퀘스트와 크리에이터 챌린지를 통해 내가 코딩한 결과물을 육안으로 확인할 수 있는 시간들이었다. 특히나 로봇퀘스트 시간은 너무나 즐거운 시간이었다. 한 번의 실행으로 최대한 많은 미션을 수행하는 것이 우리팀의 목표였는데 수차례의 시행착오 끝에 반 내에서 가장 많은 미션을 연속으로 수행해내는 데에 성공했기 때문이다. 주차 후반부에는 앞으로 함께할 반 담당 강사님께서 Python 기초, API 에 대한 간단한 설명 및 실습, Git & Github 에 대한 설명을 해주셨다. Git & Github 는 과거에 사용한 적..

[TIL] 스타트캠프 마지막
SSAFY/TIL 2024. 1. 12. 20:42

배운 것 오늘은 git 이 어떤 과정을 통해서 버전 관리를 하는지, 그리고 로컬에서 작업한 내용을 원격 저장소인 github 에 올리는 방법 등에 대해 배웠다. 나머지 시간은 자습을 했는데 다른 분께서 알고리즘 문제 하나를 물어보셨다. https://www.acmicpc.net/problem/11660 11660번: 구간 합 구하기 5 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차례대로 주어진다. 다음 M개의 줄에는 네 www.acmicpc.net 단순히 합을 구해야 하는 매 횟수마다 2중 for문을 반복하게 되면 최악의 케이스는 연산을 거의 100억번 가까이 해야하..

[TIL] 스타트캠프 8일차
SSAFY/TIL 2024. 1. 11. 21:27

배운 것 인터넷, 클라이언트/서버, API 에 대한 간략한 개념 Markdown Git 과 Github 오늘은 Markdown 을 배운 김에 TIL 도 Markdown 으로 작성해보고 있다. 사실 오늘 학습한 내용들은 다 과거에 학습했던 내용이지만 지속성 있게 학습을 하지 않아 새로운 것처럼 느껴졌다. 그리고 느낀 점은 CS 공부를 할 때 질문이 나오면 이런 식으로 대답해야지라는 암기식으로 학습을 하다보니 이해를 전혀 못하고 있다는 점이다. 예전에 면접스터디를 할 때 분명히 API 가 무엇인지 설명해보세요 라는 예상 질문을 만들고 거기에 대해 답변하는 훈련을 했었다. 근데 오늘 '소프트웨어 간 통신을 위한 인터페이스'를 뭐라고 하나요? 라고 물었을 때 뭐지...? 하면서 머리 속에 생각나는 건 '소프트웨..

article thumbnail
[TIL] 스타트캠프 7일차
SSAFY/TIL 2024. 1. 10. 21:49

배운 것 Python 기초 문법 및 자료형에 대해 학습하는 시간을 가졌다. 과거에 Python 을 했던 적이 있어 내용 자체는 크게 어렵지 않았다. 다만 5~6년 전을 마지막으로 Python 을 처음 써보는 거고 Java 에만 익숙해 있던 터라 조금씩 헷갈리는 부분들이 있었다. 특히 문자열과 숫자의 덧셈 부분이 그랬다. Java 에서는 다음과 같이 출력한다고 했을 때 자동 형변환이 일어나 에러가 발생하지 않았었다. System.out.println("나이 : " + 28); 하지만 Python 에서는 이렇게 문자열과 숫자를 더하려고 하면 type 문제로 인해 에러가 발생하게 된다. print('나이 : ' + 28) 추후엔 다시 Java 로 돌아갈지언정 SSAFY 1학기동안은 Python 을 사용해야 하..

[TIL] 스타트캠프 6일차
SSAFY/TIL 2024. 1. 9. 17:17

배운 것 오늘은 프로그래밍으로 로봇을 조작하고 퀘스트를 클리어하는 수업이 진행되었다. 한 번 프로그램을 실행시켰을 때 수행해낸 미션 수에 따라 보너스 점수가 지급되는 구조였기에 5개의 미션을 한 번에 클리어하는 것을 목표로 진행하였다. 이 중 물품을 옮기는 작업에서 초기에는 이 물품을 잡고 움직이는 방식을 구상했으나 쉽지 않았고 생각의 전환을 통해 차체로 밀고 가는 방식을 선택해서 해결했다. 그 외에도 여러 번의 시행착오를 겪었고 결국 5개의 미션을 해내는 데에 성공했다. 중간중간에 포기하고 한 번에 2~3개의 미션만 수행하도록 코드를 변경할까도 했지만 결국 해냈고 이 과정을 통해 앞으로의 SSAFY 생활에서도 어려움이 닥쳤을 때 포기하지 않아야 함을 배웠다.

[TIL] 스타트캠프 5일차
SSAFY/TIL 2024. 1. 8. 21:16

배운 것 오늘은 RedBrick 이라는 사이트를 이용해서 간단한 게임을 만드는 시간을 가졌다. javascript 기반으로 코딩해서 게임을 구현할 수 있었다. 우리 팀은 '무단횡단'을 주제로 게임을 만들었고 나는 거기서 로직을 구성하는 코드를 짜는 일을 담당했다. 이 과정에서 내가 생각한 대로 구현하는 게 참 어렵구나... 라는 점을 느꼈다. 보통 구현은 이미 만들어진 메서드를 활용하는 방식이었는데 메서드의 내부 동작 원리를 모르다보니 이와 연계해서 우리 팀이 생각한 기능을 구현하는 데에 어려움이 있었다. 예전에 Spring 에 대해 공부할 때도 Spring 이 자동으로 해주는 영역에 대한 이해도가 없어 애를 먹은 적이 있는데 그게 이번 시간에도 반복된 것이다. 물론 이번에는 애초에 RedBrick 이라..