728x90
반응형

전체 글 186

객체지향 개발에서의 캡슐화, 추상화, 상속성, 다형성(오버로딩, 오버라이딩)

객체지향 개발의 특징에는 캡슐화, 추상화, 상속성, 다형성이 있다. 오늘은 각각이 어떤 내용인지에 대해 쉽게 알아보자 캡슐화? 캡슐화란 단순히 class를 이용해 구현한다는 의미이다. 자바에서는 class와 main을 이용해 프로그래밍을 하는데, class에서 어떻게 객체를 만들 것인지 캡슐을 만들어 정의해준다는 뜻이다. 상속성? 상속성이란 샷과 아메리카노의 관계와 비슷하다. 샷이라는 class를 만들어놨으면, 아메리카노 class에서 또 샷을 정의할 필요 없이 샷을 상속받기만 하면 된다. 추상화? 추상화란, 데이터나 프로세스를 의미가 비슷한 개념이나 표현으로 묶는 것을 말한다. 예를 들어 치즈라면과 떡라면 모두 물 끓이기+면넣기+스프넣기 라는 과정이 있고 치즈라면은 (앞 과정)+치즈 떡라면은 (앞 과정..

Computer Science 2022.05.28

애플리케이션과 웹의 차이 Difference between Website and (Web/mobile) Application

웹의 기본 내용 HTML 연구소 내 직원들이 서로 다른 운영체제, 애플리케이션을 사용해 정보 교환: 각 운영체제에서만 호환되는 파일 주고받아 열지 못함 →운영체제, 프로그램 상관없이 일정한 형식이 동일하게 보이는 문서 필요해짐 =HTML 브라우저만 있다면 어디서도 동일한 내용을 볼 수 있음 정보를 체계화하는 코드 존재: 태그 프로그래밍 언어가 아님, 즉 일을 시킬 수 있는 언어가 아니라 브라우저가 볼 수 있는 문서를 적는 언어 CSS HTML에 디자인을 입힐 수 있는 코드 HTML은 정보만, CSS는 디자인만 표현하는 코드 HTML+CSS 작업=퍼블리싱 작업 마크업? Hyper Text Markuo Language에서의 M HTML 작업을 의미 Javascript ex: 네이버 검색창에 A를 입력했을 때..

API, JSON, RESTful API, HTTP 상태 코드란?

API란? 서로 다른 프로그램이 소통하기 위한 체계 데이터를 같이 담아 이동 클라이언트-서버 관점 Request side CRUD Create: 생성하기 Read: 불러오기 Update: 바꾸기 Delete: 지우기 대부분 이 네 가지 안에서 진행됨 CRUD 중 특정 기능이 없는 기획은 기획 의도가 명확해야 하고, 이유도 있어야 함 각각의 요청은 주소를 갖게 됨 but 문제점 CRUD별로 주소가 생기지만, 너무 많고 관리가 어려워짐 ex: 주소 간에 겹치는 기능, 충돌 →체계적으로 만들자! RESTful API란? REpresentational State Transfer 특징 주소 개수가 줄어들고, CRUD를 하나의 주소로 관리 대신, 요청 보낼 때 스티커를 붙이게 됨! Create: 생성하기 — POS..

즐겁게 배우는 알고리즘과 프로그래밍 도감 책 리뷰:: 알고리즘과 자료구조의 차이가 뭐지 모르겠다면, 코테 냅다 부딪히기 머리 아프다면 보세요

책 제목 즐겁게 배우는 알고리즘과 프로그래밍 도감 추천 이유 HTTP 완벽 가이드를 사러 서점에 들렀다가 마음을 빼앗긴 책. 우선 그림이 많고 가독성이 좋다. 미국 교과서 카툰을 그대로 여기저기 배치한 그런 그림 말고(그림만 많다고 좋은 책이 아니라는 걸 요즘 특히 깨닫고 있다), 정말! 이해를 도와주고 싶은 게 너무 드러나는 정성스러운 일러스트가 매력적이다. 알고리즘이 뭘까? 자료구조는 뭘까? 자료구조와 알고리즘의 차이는 뭘까? 이 세 질문에 대답하기 어렵다면 꼭! 반드시! 읽어봐야 하는 책. 특이하게도 여러 가지 언어로 알고리즘을 풀이해주는데, 이게 또 은근한 장점이다. 처음에는 왜 굳이 다른 언어까지?라고 의아했지만 아마 프로그래밍 언어 간 공통점과 차이점을 자연스럽게 학습시키려는 의도도 있는 것 ..

Computer Science 2022.05.28

혼자 공부하는 얄팍한 코딩지식 책 리뷰

책 제목 혼자 공부하는 얄팍한 코딩지식 추천 이유 줄여서 라고도 불리는 이 책은 며칠 전 읽었던 에 이어 코딩에 관련된 전반적인 지식을 소개하는 책이다. 입문자용답게 적절한 비유와 가독성으로 술술 읽기 좋다. 특히 입문자로서 구글링을 하다보면 매번 마주쳤던 용어들, 그렇지만 당장 모르는 것 파고들기도 바빠 찾을 겨를이 없어 놓쳤던 용어들을 잘 정리해준다. 어느 분야에서든 초보의 가장 큰 문제점은 어디까지 알고, 무엇을 모르는지를 모른다는 것인데, 이 책은 책처럼 전반적인 흐름을 잡아주어 가려웠던 부분을 시원하게 긁어준다. 아래 목차를 넣을 건데, 목차 옆에 easy, medium, hard로 난도를 분류하여 당장 와닿지 않거나 어려우면 넘어갈 수 있다는 것도 장점인 듯하다. 나는 목차를 유심히 보지 않기..

Computer Science 2022.05.28

개발자가 공부자료를 관리하는 방법(feat. 노션 템플릿)

어느새 자료의 무덤이 되어버린 노션😒... 프로젝트부터 냅다 시작했다 보니 자료를 보면서도 이해를 완전히 하지 못해서 남겨놓고 싶고, 어제 공부한 내용과 겹치는데 url은 안 남아있고 등등 문제가 생겼다. 결국 노션 웹클리핑 방식을 뒤집어엎었는데 다른 분들에게도 도움이 될까 싶어 기록한다. 뭐가 문젤까? 😿 보통 문제되는 상황은 이렇다. 🚨뭐 공부하다가 찾았는지 모름 🚨정리하고 싶은데 정리가 안 됨 🚨주기적으로 보고 싶은 자룐데 어디 모아야 할지 모르겠음 🚨이해는 했는데 아직 정리를 못했음 북마크 해놓는 것도 정도가 있지, 다음에 같은 주제로 폭풍 검색하다 같은 글에 들어가는 순간 현타가 밀려온다. 우선 이 글을 마저 보기 전에 익스텐션 하나를 깔아주어야 한다. save to notion이라고 확장 프로..

비전공자를 위한 이해할 수 있는 IT지식 리뷰, 총정리

우연히 서점에서 몇 장 들춰보다가 이거다! 싶어서 사온 책, 책 리뷰를 간단하게 해본다. 저자는 기획자로서 개발자와 협업하다 만났던 어려움을 해소하기 위해 개발 공부를 시작했고, 현재는 기획자, 개발자, 강사로 일하고 있다. 다양한 비유를 통해 쉽게 설명되어 있고, 현업의 관점에서 이야기를 풀어내기 때문에 이해가 더 잘 된다. 예를 들어, 깃의 브랜치를 설명할 때 실제로 개발자들이 겪는 상황을 나열하며 '문제'상황을 제시한 뒤 '해결책'으로써 깃의 기능을 소개하니 단순히 깃을 협업툴로만 인지할 때보다 확 와닿았다. 주변 사람들에게는 이미 여기저기 추천했고, 하루만에 읽을 만큼 내용이 어렵지 않아서 혹시 개발의 전체적인 흐름을 알고 싶다면 읽어보길 추천한다. 아래는 책을 참고해 한 장으로 정리한 그림이다...

Computer Science 2022.05.24

개발자 취업을 위한 self-SWOT 분석 방법

부트캠프 자소서를 작성하기 전 내 강점과 약점, 기회와 외적 위협을 정리해보았다. SWOT분석이라 함은 종합적, 객관적으로 현 상태를 파악해 해결방안을 찾는 툴이다. 작성하면서 왜 내가 개발자에 적합한 인재인지, 왜 나를 뽑아야 하는지 설득력 있게 정리할 수 있었다. swot분석을 할 때는 근거에 대해 수치화해서 적어보는 게 도움되는 것 같다. 🚩SWOT 분석을 통해 이루고 싶은 목표 수립 무엇을 위한 분석인지를 분명히 해야 한다. 나의 경우, 개발자로서 6개월~1년 내에 목표 기업에 취업하기 위한 전략이다. 👀 SWOT 항목 작성 ✔Strength 생산성 강화에 집중하는 성격 회복탄력성이 좋고 꾸준하게 지속함 정보 수집, 관리를 통해 미리 준비함 자기객관화와 분석력을 활용, 본인에게 적합한 방식을 빨리..

조언과 생각집 2022.05.24

메모리의 기본 구조, Heap, Stack

✔Memory:: overview 메모리, 왜 중요한가? 컴파일하고 실행할 때에 컴퓨터 내의 메모리를 사용하게 됨 즉, 메모리의 구조를 알면 한정된 메모리 안에서 효율적으로 코드를 짤 수 있음 메모리 누수, 스택/힙 오버플로우 등의 문제를 사전에 방지할 수 있음 ✔Heap & Stack Heap 동적 할당 메모리(사용자가 관리) 할당 후 해제 필수 run 할 때 할당됨 액세스가 느리고, 운영체제마다 작동방식이 다르다는 단점 Stack 정적 할당 메모리(컴퓨터가 알아서 지정) 함수 호출 시마다 쌓임(compile 단계에서 할당) Last In First Out 호출 완료 시 소멸됨 ✔Boxing, Unboxing Boxing Stack→Heap primitive값을 objective로 만들기 자료형을 더 ..

mood tracking_

기록에는 능해도 편집과 의미 도출에는 늘 취약했던 내게 워크플로위는 생산성 도구 그 이상의 의미이다. 어제와 오늘, 상상도 쉽지 않은 먼 미래 사이에 촘촘한 기록이 찍혀 있다는 것을 보여주는 나의 일기장이자 플래너이자 비서다. 오늘은 트라우마에 대처하는 방법을 배웠다. 숨이 막히는 기분이 들 때에는 신체의 말랑한 부분을 천천히 만지고, 조금씩 자세를 바꾸어가며 움직이고, 동시에 가장 편안했던 여행지를 떠올려 보라고 의사는 말했다. "가장 편안했던 여행지요?" '가장~한' 이라는 수식이 붙은 질문에 늘 그래왔듯 한참을 생각하고 나서야 한 곳을 골랐다. 듬성한 소나무숲, 파란 하늘에 섞이던 코발트색 티셔츠, 파도처럼 여유롭게 미끄러지는 바람과 한참을 봐도 질리지 않았던 수평선이 그려졌다. 그런 시간이 있었지..

728x90
반응형