00. 들어가며 객체지향의 사실과 오해의 저자 조영호님의 3년만의 후속작입니다. 해당 책을 리뷰하면서 실전적인 책이라기보단 작가분의 객체지향적 철학 전달에 중점이 있던 책이라고 말씀드렸었습니다. 해당 책의 서평은 다음에서 읽으실 수 있습니다. https://rawshrimpsushi.tistory.com/28 그래서 유익하면서도 뭔가 아리송한 느낌은 지울 수 없었습니다. 이 책은 그런 갈증을 한번에 날려주는 책이었습니다. Java Next step처럼 실전적으로 코드를 개선해보며 저자분의 객체지향 철학을 전달 받을 수 있는 아주 좋은 책이었습니다. 그래서 Java Next Step처럼 이 책도 한 단원씩 정리해서 올려보려고 합니다! 1장 – 객체의 자율성을 높여라 객체지향의 사실과 오해에서 데이터 중심으..
1. 들어가며 실전적으로 리팩토링, OOP에 맞는 코드를 짜보는 경험을 하게 해주는 책은 흔치 않습니다. 이론적으로 객체지향을 접근하거나 여러 디자인 패턴들을 소개시켜주면서 코드를 짜는 책들이 대부분이고 분명 큰 도움은 되지만 스스로 체화하는 시간이 많이 필요합니다. 물론 좋은 코드라는 것은 절대적인 기준이 있는 것도 아니고 상황 별로 적용해야할 상황이 모두 다르기 때문에 실전적으로 다루는 것은 어려운 일일 것입니다. 하지만 그런 책이, 그것도 웹개발 분야에서 정말 스파르타식으로 경험해볼 수 있는 책이 있습니다! https://www.yes24.com/Product/Goods/31869154 자바 웹 프로그래밍 Next Step - 예스24 이 책은 웹 개발 입문의 껍질(책에서는 ‘양파껍질’로 표현한다)..
1. 들어가며 프로젝트 시연 영상 안녕하세요. 저번 학기에 진행했던 프로젝트를 소개하는 글을 쓰고자 합니다. 저희가 만든 앱은 부모와 아이가 함께 캐릭터를 그리고 ai에 의해 애니메이팅 된 캐릭터를 추억으로 공유할 수 있는 앱입니다. 스마트폰의 등장으로 부모와 아이가 함께 보내는 시간은 줄어들고 가족으로써 추억을 쌓을 일도 적어지고 있다고 생각합니다. 이러한 상황에서 스마트폰 사용 자체를 막기보단 아이들에게 더욱 친숙한 기기를 통해 부모님과 소통하고 같이 시간을 보낼 수 있는 어플리케이션이 있으면 어떨까 하여 만들게 되었습니다. 2. 프로젝트 설명 앱의 전반적인 플로우는 위의 데모 영상을 참고해주시면 좋을 것 같습니다. 부모와 아이가 각각 스마트폰으로 방에 참가하여 동시에 캐릭터를 그리면, 해당 캐릭터를..
1. 들어가며 좋은 코드를 짜자! 라는 말은 항상 하지만 프로젝트에서 막상 코드를 짜다보면 내 코드에 확신을 가지는 것은 쉽지 않습니다. 경험이 늘어날수록 개선은 되어가지만 어떤 확고한 행동 기준을 스스로 잡지 않으면 고민을 되풀이하는 경험도 하게 됩니다. 이번에 읽은 "객체지향의 사실과 오해"는 그런 기준점을 잡아주는데 큰 도움이 되는 책입니다. 다음과 같은 분들에게 추천을 드리고 싶습니다. 프로젝트 경험이 몇 번 있지만 전체적인 아키텍쳐를 짜는 기준을 명확히 잡지 못하겠다. 이유는 다음과 같습니다. 이 책에서는 객체지향 프로그래밍에 대한 구체적이고 상세한 구현을 보여주지는 않습니다. 즉 코드 설명은 거의 없다고 봐도 무방합니다. 다만 좋은 구조를 만들 수 있는 접근 방법을 서술하고 있습니다. 프로젝트..
1. 들어가며 call by value : 값에 의한 전달 call by reference : 참조에 의한 전달 call by address : 주소에 의한 전달 결론부터 이야기하면 위와 같습니다. 처음에 들으면 쉽군! 하지만 공부를 하다보면 분명 헷갈리는 지점에 도달합니다. 예를 들어 Java는 Call by reference가 없다! 와 같은 것입니다. 어라? 함수 인자로 객체를 넘겨주고 값을 바꾸면 반영이 되지 않나..? 하지만 Java는 분명 call by value 만을 사용하고 있습니다. 본 글에서는 셋의 차이를 확실히 짚고 넘어가고자 합니다. 2. call by value와 call by referece, call by address의 차이가 무엇인가요? 2.1 call by value ca..
1. 들어가며 - GO의 기본 문법 Go는 구글에서 만든 언어로 python, Java에 비하면 비교적 젊은 언어입니다. C++의 불편함을 개선하기 위해 처음 만들어졌고 GoRoutine 같은 비동기 매커니즘을 언어 자체에서 제공하고 있습니다. 처음 Go를 접하신 분이라면 다음 글에서 빠르게 문법을 훑고 지나가는 것을 권해드립니다! 30분 G의 제목처럼 keyword가 25개 밖에 되지 않아 입문이 어렵지 않습니다. https://school.programmers.co.kr/learn/courses/13/13-30%EB%B6%84-go 30분 Go 현재 IOS/안드로이드 앱 내에서는 결제를 지원하지 않습니다. school.programmers.co.kr 처음 Go에 대해 작성하는 글이고 처음 접하는 분들..