목록잡다한 지식 (6)
개발일지
얼핏 보면 비슷한 라이브러리와 프레임워크! 공통점: 개발 속도를 더 빠르게 만들어 줍니다. 둘 다 누군가 미리 작성해 놓은 코드, 우리의 개발 속도를 더 빠르게 만들어 주는 도구다. 차이점: 내가 제어하는가, 제어 당하는가?? -> 누가 누굴 제어하는가?? 라이브러리: 내가 어떤 도구에 대해서 모든 결정을 다 내릴 수 있다. 프레임워크: 누군가 정한 규칙에 따라 도구를 사용하고 있다. 라이브러리는 내가 필요로 할 때 불러서 쓸 수 있고 언제든 다른 라이브러리로 교체할 수 있다. ex) 웹 사이트 화면을 구성하는 라이브러리는 시멘틱UI(Semantic UI), 테일윈드CSS (Tailwind CSS) 등 굉장히 많은데 아무거나 골라서 쓰면 됨! 라이브러리를 교체한다고 해서 프로젝트의 모든 것이 와르르 무너..
컴퓨터가 프로그래밍 언어를 어떻게 받아들일까? 컴퓨터는 프로그래밍 언어를 있는 그대로 받아들이지 못합니다. 컴퓨터는 멍청하기 때문에 0과 1만 받아들일 수 있습니다. 그래서 프로그래밍 언어는 반드시 0과 1로 해석해 주는 과정을 거쳐야 합니다. 번역하는 방법에는 2가지가 있습니다. 방법에 따라 속도가 결정되는 것입니다. 1. 인터프리트 언어 interpreted language : 파이썬, 자바스크립트 비유하자면 동시통역사처럼 해석한다고 생각하면 쉽습니다. 인터프리트 언어는 중간에 동시통역사 역할을 해주는 인터프리터라는게 0과 1을 사용해서 프로그래밍 언어를 실시간으로 번역해 줍니다. 파이썬으로 코드를 작성하면 중간에 인터프리터가 0과 1로 번역하여 컴퓨터에게 전달하는 방식으로 실행되는 것입니다. 2. ..
어디에 접속하나 비밀번호를 입력하는 일은 이제 일상이 되어버렸다. 비밀번호 자동 저장기능도 쓰고.. 그러면 민감한 정보인 비밀번호는 어떻게 저장되는지 궁금해서 해당 게시물을 작성한다. 비밀번호 시스템 구현. 어떻게 해야할까? 비밀번호는 보안에 아주아주 중요한 부분을 차지한다. 그래서 제대로 구현해야 한다. 데이터베이스에 비번을 그대로 저장하는 사람은 없겠지? 비밀번호를 입력하고 회원가입을 하면 해시함수를 통해 비밀번호를 무작위 값으로 둔갑시킨다. 여기서 해시함수.. 동일한 입력값에 대해서는 동일한 출력값을 갖는다. 일대일 대응이라는 소리. 하지만 입력값이 아주 조금만 바뀌어도 출력값은 엄청 크게 바뀐다. 완전히 다른 결과가 나온다는 말이다. 엄청난 무작위성을 갖고있다. 그리고 반대로 입력한다고 해서 원래..
서버가 없긴 없는데 진짜 서버가 없다는 뜻은 아님 있기는 하지만 우리 곁에 없는 것뿐! 서버리스는 우리가 직접 관리하지 않는 서버를 의미한다. 원래 서버는 우리 곁에 있었다. 실제 회사마다 사무실에 서버를 구매해서 전원을 꽂고 인터넷을 연결해서 관리했었다. 그러면 무슨 일이 생길까? -> 사무실에 정전이 발생하면.. 누군가 서버의 전원을 뽑으면.. 난리난리 남.. 또 서버의 성능이 좋지 않은데 트래픽이 확 증가하게 되면..?? 한마디로 예전에는 서버를 전부 수동으로 관리했었다고 한다. 아마존 등장으로 서버는 우리 곁을 떠났다!!! 아마존이 EC2 (Amazon Elastic Compute Cloud) 서비스를 선보였다. 우리가 사무실에서 관리하던 서버를 아마존이 대신 운영해준다는 목적으로 나온 서비스다!..

API . Application programming interface 이다. 개발을 하면서 페이스북API, 인스타그램API 와 같이 API 말을 많이 쓰는데 API가 뭘까?? 흠, 키보드와 비슷하다고 생각하면 쉽다. 키보드는 컴퓨터에 무언가를 입력할 때 사용하는 도구이다. 컴퓨터와 내가 대화할 때 다리 역할을 해준다. 우리가 컴퓨터와 소통할 때 키보드를 쓰는 것처럼 프로그램끼리 소통할 때 쓰는 일종의 규칙을 코드화한 걸 API라고 한다. 우리가 애플리케이션을 만든다고 생각해보자. 화면에 로그인 버튼, 로그아웃 버튼, 사진 업로드 버튼이 있다고 해보자. 사진 업로드 버튼을 누르면 -사진 데이터를 데이터베이스에 저장한다- 와 같은 동작이 이뤄져야 한다. 근데 화면은 버튼을 보여주는 역할만 하고 데이터베이스..
모두 새로운 프로그래밍 언어를 배울 때 빠르게 배우고싶어한다. 새로운 언어나 새로운 프레임워크를 배울 때 사용하면 좋은 방법을 공유해보고자 한다. 나는 대학교 1학년 1학기 때 C 언어를 처음 배웠었다. 그리고 2학년 1학기 때 Java 를 배웠다. 그 때 느낀 점은 C 언어를 배우고 나서 Java 를 배우니까 좀 더 수월한 느낌이고 코드를 짜는 실력이 전보다 나아졌다는 것을 느꼈다!! 방법1. 공식 문서 보기. 공식문서에는 그 언어를 만든 사람의 철학부터 시작해서 누가 이 언어를 사용해야 하는지, 올바르게 사용한 예, 관련 커뮤니티 등 모든 자료가 있다. 말같지도 않은 블로그를 본다거나 문법먼저 확인하거나 그런 습관은 정말 안좋다. 공식문서가 짱이다!!!!!! 방법2. 문법 확인하기. 공식 문서를 보고..