![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/Q3W2x/btrXtSqcV4F/KQWuk3jRKnHQDH1LWBn9IK/img.png)
자바 객체를 영속화하는 방법의 하나로 자바 직렬화를 사용할 수 있습니다. 단순하게는 Serializable 인터페이스를 구현하거나 더 확장성 있는 방법으로는 Externalizable 인터페이스를 구현하는 것을 선택할 수 있고, 자바 직렬화에 종속되지 않는 다른 방법을 선택할 수도 있습니다. 직렬화란? 자바 시스템 내부에서 사용되는 객체와 데이터를 외부에서도 사용가능하도록 바이트 형태로 데이터를 변환하는 기술입니다. 바이트로 변환된 데이터를 다시 객체로 변화는 것은 역직렬화라고 합니다. 자바는 JVM에 의해 관리가 되는데, 메모리에서 힙 또는 스택 영역에 저장되어 있는 객체 데이터를 바이트 형태로 변환하는 기술과 직렬화된 바이트 형태의 데이터를 객체로 변환하여 JVM에 상주시키는 형태를 이야기하곤 합니다..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/efe0gw/btrXrUIxA53/9YJXftIkFKCEEjOBMVbSok/img.jpg)
보일러플레이트의 어원은? 이전에 우리 문화유산 중에 하나인 금속활자를 생각하면 이해가 빠르실겁니다. 금속활자는 고려시대 우리 선조들이 세계 최초로 인쇄술을 발명하고 실용화한 문화유산인데요, 이런 내용을 신문사업에서 기원하여 나온 영어 단어중 하나 입니다. https://namu.wiki/w/%EA%B8%88%EC%86%8D%ED%99%9C%EC%9E%90 금속활자 - 나무위키 중국에 교니활자라고 불린 것이 있었는데, 아교처럼 점성이 강한 진흙을 반죽해 구워낸 후 글자모양을 깎아 만드는 것으로, 재료가 흙이기 때문에 얼마 지나지 않아 금방 부스러져 곧 사장되었 namu.wiki 보일러플레이트 코드란? 1890년대에 광고나 컬럼에 계속 사용되는 텍스트 인쇄판은 부드러운 납 대신 강철로 찍기 시작하였는데, 이..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/ba3vc5/btrXbD7Ll7l/qzkGMkGGynwafYe3xtsBkK/img.jpg)
이전 글에 이어서 자바 코드를 리팩터링하는 기본적인 방법과 그 내용을 코드를 통하여 조금 더 이해하기 쉽도록 적어보려고 합니다. 리팩터링 1부 - https://abbo.tistory.com/393 [Refactor] 자바 코드 리팩터링하기 - 1부 안녕하세요~ 오늘은 개발자의 숙명과도 같은 코드 리팩터링에 대해 알아보고 제가 진행하는 코드 리팩터링 방법에 대해 기술해보려 합니다. 가장 먼저 리팩터링의 정의를 먼저 알아야 합니다. abbo.tistory.com 리팩터링 2부 - https://abbo.tistory.com/394 [Refactor] 자바 코드 리팩터링하기 - 2부 이전 글에 이어서 자바 코드를 리팩터링하는 기본적인 방법과 그 내용을 코드를 통하여 조금 더 이해하기 쉽도록 적어보려고 합니다..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/Cb38v/btrW6qCbY79/kkdBdNd9RZUC4gvBC4Krx1/img.png)
이전 글에 이어서 자바 코드를 리팩터링하는 기본적인 방법과 그 내용을 코드를 통하여 조금 더 이해하기 쉽도록 적어보려고 합니다. https://abbo.tistory.com/393 [Refactor] 자바 코드 리팩터링하기 - 1부 안녕하세요~ 오늘은 개발자의 숙명과도 같은 코드 리팩터링에 대해 알아보고 제가 진행하는 코드 리팩터링 방법에 대해 기술해보려 합니다. 가장 먼저 리팩터링의 정의를 먼저 알아야 합니다. abbo.tistory.com 5. 고차 함수로 의존성 줄이기 스프링을 사용한 프로젝트에서 종종 다음 2가지의 상황을 마주할 수 있습니다. 첫째, 어노테이션에 의한 의존성 주입 남용입니다. 둘째, 오랜 세월의 흐름으로 의도치 않게 서비스 간의 의존성이 복잡하게 강한 결합(Tight Couplin..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cRr2Z1/btrXarfRpdN/CundaUAkHmHORbl0GZilaK/img.jpg)
안녕하세요~ 오늘은 개발자의 숙명과도 같은 코드 리팩터링에 대해 알아보고, 코드 리팩터링 방법에 대해 기술해보려 합니다. 가장 먼저 리팩터링의 정의를 먼저 알아야 합니다. 리팩터링이란 ? 리팩터링(refactoring)은 소프트웨어 공학에서 '결과의 변경 없이 코드의 구조를 재조정함'을 뜻한다. 주로 가독성을 높이고 유지보수를 편하게 한다. 버그를 없애거나 새로운 기능을 추가하는 행위는 아니다. 사용자가 보는 외부 화면은 그대로 두면서 내부 논리나 구조를 바꾸고 개선하는 유지보수 행위이다. 리팩터링의 잠재적인 목표는 소프트웨어의 설계, 구조 및 구현을 개선하는 동시에 소프트웨어의 기능을 보존하는 것이다. 리펙터링은 코드의 가독성을 향상시키고 복잡성을 감소시키는 효과를 가지며, 이러한 이점은 소스 코드의 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/Hlg99/btrWTK72mph/XPYBeZDuc6tGkZWVhDNUek/img.jpg)
요새 채용하는 글들을 보면 직무가 여러가지로 나뉘게 되어서 올라오는 경우가 많습니다. 대표적으로 서버 엔지니어(Server Engineer)와 서버 디벨로퍼(Server Developer) 가 제가 주로 보게된 서버 개발을 하는 직군인데, 오늘은 왜 이렇게 직무가 상세하게 나뉘어졌고 우리 회사에서는 어떤 직군이 필요한지 간단하게 알아보려고 합니다. 1. 서버 개발자, 백엔드 개발자 이전에는 보통 서버의 운용관리를 담당하고 회사에서 운영하는 소프트웨어의 API, 관리자의 기능 추가 및 퍼블리싱을 주로 담당하는 직군으로 알려져 있습니다. 실제로 현재 운영하는 서비스에서도 많은 서버 개발자들이 이와 같은 기본적인 업무를 처리하고, 기획에 나와있는 내용을 효율성에 맞게 개발 및 유지보수하는 것까지 포함되어 있습..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bcn0FX/btrVpfWCuUV/PmIhNP9hkBHxoGPGa08Y9K/img.jpg)
오늘은 스타트업에서 자주 사용하는 8가지 용어들에 대해 적어볼까 합니다. 주니어 경력의 입사자분들께서 스타트업에 오시면 대부분 용어에 혼선을 빚거나 정확히 뜻을 모르는 채로 회의 참석할 소지가 있고, 문장 또는 문맥의 앞과 뒤를 연결지어 이해해보면 유추가 가능하지만 나중에 뜻을 몰라서 헤매는 경우도 있기 때문에 이 글을 작성하게 되었습니다. 1. Task, Action Item, To do List 3개가 다 비슷한 표현이기에 적어보았습니다. 뉘앙스가 조금씩 다르지만 크게 구분할 필요는 없을 것 같습니다. 용어의 뜻은 Task(과업), Action Item(실행 과제), To do List (할 일) 입니다. 용어를 어떻게 사용하느냐가 조금 차이가 있습니다. Task 나 과업이라는 표현을 자주 쓰는게 좋..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bGiNqc/btrUTYnoYJh/wmTPom6ukGfslka6px4KJ1/img.jpg)
안녕하세요. 이번 글에서는 2022년에 진행한 내용을 돌아보는 시간을 가지고, 지난 1년동안 무슨 성과를 가졌는지 고민해보는 시간을 가져보려 합니다. 0. 인트로 저는 회사에서 주로 회의시간에 회의록을 작성하고 있습니다. 그리고 실제로 회의 때 나온 내용들을 토대로 개발을 어떻게 할지 기획을 짜고 이렇게 작성한 글들을 제 개인 노션으로 옮겨적는 일을 하고 있습니다. 이렇게 옮겨 적게 되면 뭔가 실행하기까지의 과정은 느리지만 코드 뿐만 아닌 전체 틀을 볼 수 있는 안목이 생기고, 코드의 양이 많아지고 개발하는 프로세스가 어려워지더라도 이전에 작성해둔 가이드 문서를 보았을 때 보다 쉽게 작성할 수 있지 않을까 했습니다. 물론 글로 옮겨 적는 것이 불필요하고 이런 행동들과 습관들이 급하게 개발하여야 하는 경우..