위키북스 [스프링 입문을 위한 자바 객체 지향의 원리와 이해]를 읽고 개인적으로 정리한 글입니다. 01 사람을 사랑한 기술 기계어에서 객체 지향 프로그래밍 언어로 언어 특징 기계어 목적파일 = 소스 그 자체 어셈블리어 인간 언어로 작성 (기종별 어셈블러로 소스를 번역), 기종마다 소스 하나씩 C 하나의 소스 (One Source Multi Object Use Anywhere), 기종별 컴파일러 필요 C++ 객체지향 도입 (객체지향 지원 언어) 자바 한번의 컴파일(Write Once(One Source) (One Object) Use Anywhere), 기종별 JRE 필요, 포인터 X ❓ 왜 자바는 포인터를 지원하지 않나요? 주로 보안/추상화 단계 때문. - 보안 측면: 포인터가 제공되면 바람직하지 않은 ..
이하의 내용은 CSAPP(Computer Systems: A Programmer's Perspective, Global Edition)의 1.9.2 동시성과 병렬성 내용을 읽고 정리한 것입니다. 1.9.2 동시성Concurrency과 병렬성Parallelism 동시성Concurrency: 동시에 여러가지 일을 수행하는 시스템의 성질 병렬성Parallelism: 동시성을 사용해서 보다 빠르게 동작하도록 하는 것 쓰레드 수준 동시성 프로세스 추상화 방식을 이용하면, 시스템 상에서 여러 프로그램들을 동시에 실행하여 동시성을 실현할 수 있다. 쓰레드thread를 이용하면 한 프로세스 내에서 여러개의 제어 흐름을 둘 수 있다. 시간공유기법time-sharing: 한 개의 컴퓨터가 여러 개의 프로세스를 빠르게 전환..
[문제 요약] 선행 스킬 순서 skill과 유저들이 만든 스킬트리를 담은 배열 skill_trees가 매개변수로 주어질 때, 가능한 skill트리 개수를 return하는 solution 함수를 작성해주세요. 스킬은 알파벳 대문자로 표기 스킬 순서와 스킬트리는 문자열로 표기 skill의 길이는 1-26, 중복된 스킬 없음 skill_trees는 길이 1-20의 배열이며, 그 원소는 길이가 2 이상 26 이하인 중복 없는 문자열 [내 풀이] def available(skill, tree): arr = [-1] * len(skill) for i, s in enumerate(skill): for j, t in enumerate(tree): if t==s: if i==0 or -1
싸피 11기에 합격하였다. 합격이든 불합격이든 한번 끊어가고 싶다는 생각으로 일본 여행을 와 있는 중, 수요일엔 결과가 나올 것이라고 생각 했는데 안 나왔고, 목요일에 포켓몬 카페 예약을 가는 중에 느낌이 쎄해서 확인해봤더니 나왔더라. 지원동기 지원동기는... 크래프톤 정글 이후에 협력사 및 하반기 공채에 다 떨어지고, 공백을 채우고 자바 공부를 할 여건을 만들면서 학습지원금이 나오는 것이 아무래도 좋다고 생각했기 때문이다. 경제 상황이 좋지 않다보니 일반적인 IT 기업의 채용도 감소하고, 합격한다고 해도 내가 실질적인 경력을 쌓는 동안 회사 상황이 급변하기 쉬울 것 같아서 SI 및 대기업을 지원하는 것으로 방향을 돌리고자 했다. 싸피에 다니게 된다면, 9시부터 6시까지 캠퍼스에 나가야 하므로 생활패턴도..
서류전형준비 - 자소서LG CNS 자소서는 500자 2문항이여서 비교적 가볍게 쓴 것 같다. 3번은 원하는 직무 적는거니까 패스하고.... 자소서 처음 적는거라 엄청 헤맸는데 결국에는 비슷한 내용으로 쓰게 되는 것 같다. 회사에 대해서 조사하기 위해서 회사 홈페이지 엄청 찾아가면서 쓴 기억이 있다.사실 첫 공채 지원부터 난사 하려고 했는데 자소서가 준비가 안되어있으면 난사 자체가 쉽지 않은 듯 하다. 하나라도 제대로 깎아서 서합을 받아내자 라는 마인드로 초반 삼성/LG에 시간 투자를 꽤나 많이 했다. 이후에는 좀 익숙해졌는지 분량맞추고 다듬는 속도가 좀 늘었다.결과 - 합격서류는 합격했다. 워낙에 이런저런 말도 있고.. 나름 처음이라고 꽤나 공들여 써서 그런지, 그리고 질문에서 요구하는게 많지 않아 그런..
[후기] 타겟층을 처음 취직을 시작하는 사람이나 1-2년차 주니어라고 하셨는데, 솔직히 내가 아직 멀었다는 것을 알게 되었다. 알아들을 수 있는게 별로 없었음... 왜냐면 나는 백엔드라기보다는 아직 초보 코더라고 하는게 맞기 때문일듯 하다. 아직 멀었구나.. 라는 생각밖에 안 드는 강의시간이였다. 단어 하나하나 알아듣기 힘든데, 강사님께서 예시로 나열해주시는 것 하나하나가 이해하기 어려웠기 때문이다. 그래도 최대한 눌러붙어있으려고 한건.. 귀에 스치는 모르는 단어 하나하나를 적고, 그거 하나가 뭔지 찾는것도 하나도 모르는 나에게는 도움이 될 것 같기 때문이다. 옵시디언에 강의자료를 옮기고 거기에 들리는 것들을 추가하며 나름 최대한 받아적어보려고 노력했다. [강의] 첫 강의의 세션은 1) 기술 면접에서 시..
개발자라면 기술블로그를? 개발자로서 취업을 알아볼때, 결국 IT 기업에 가려면 (심지어는 일부 대기업도) 프로젝트와 포트폴리오가 중요하다는 것을 알게될 수밖에 없다. 전공자는 학교 다니면서 자연스럽게 프로젝트를 하게 되고, 주변에서 학회 등을 하면서 자연스럽게 준비하게 되지만, 갑자기 개발자로 커리어를 전환하게 되는 사람 입장에서는 당황스러울 수 밖에 없다. 특히 블로그. 블로그도 좋은 포트폴리오가 된다... 고는 하지만, 블로그는 뭔가 더 오래 해와야 할것 같은 그런 느낌이 있다. 애초에 포트폴리오로서 역할을 하려면 '긴 시간 꾸준히 작성하고, 기본적인 지식 뿐만 아니라 프로젝트에서 했던 고민들을 담고 있는' 블로그여야만 한다. 프로젝트야 짧게는 1달 내외로까지 치고 빠질수 있는데, 쓰기 시작한지 한달..
문제 개요 사람들 t번 사람은 t분에 자신이 가고싶은 편의점과 최단거리에 있는 베이스캠프에 들어감 가장 가까운 베캠이 여러개이면 행이 작은 곳으로 , 행이 같으면 열이 작은 곳으로 들어감 베이스캠프에 들어가는 데에는 시간이 소유되지 않음 베이스캠프에 사람이 들어가면 그 이후로 다른 사람들은 해당 베이스캠프를 지나갈 수 없음 격자에 있는 사람들이 모두 이동하고 해당 칸을 지날 수 없음 가고 싶은 편의점 방향을 향해서 1칸 움직임 최단거리로 움직임 상, 좌, 우, 하 순으로 움직임 편의점 도착 해당 편의점에서 멈춤 다른 사람들은 해당 편의점을 지나갈 수 없음 격자에 있는 사람들이 모두 이동하고 해당 칸을 지나갈 수 없게 됨 문제를 위와 같이 정리할 수 있다. 풀이과정, 방향 함수는 들어갈 베이스캠프 결정/사..