본문 바로가기
728x90
반응형

Java61

2022 연말정산 변경내용 1 - 청년형 장기집합투자증권저축 소득공제 (청년형 소득공제 장기펀드) , 상품이 없는데 어떻게 가입해요ㅠㅠ 2022년 연말정산을 대비해야 할 시즌이 다시 찾아왔고, 올해도 전산담당자로서 변경되는 포인트를 짚어보는 포스팅을 몇 편에 걸쳐 올려볼 생각이다. 그 중 가장 눈에 띄는 부분은 청년형 장기집합투자증권저축 소득공제 흔히 청년형 소득공제 장기펀드 , 청년 소장펀드 등으로 알려져 있다. https://securities.miraeasset.com/hks/hks4325/n02.do청년형 장기집합투자증권저축 | 청년형 장기집합투자증권저축 | 세금혜택상품 | 금융상품 | 미래청년형 장기집합투자증권저축이란? 청년펀드는 「조세특례제한법」 § 91조의 20에 따른 년형 장기집합투자증권저축으로 연령요건, 소득요건에 해당하는 고객이 전 금융권 한도 600만원까지 가securities.miraeasset.com미래에셋증권에서.. 2022. 12. 6. 20:14
클린코드(Clean code) 17장 - 냄새와 휴리스틱 : 최종 정리 1. 클린코드에 대한 철학 1) 나쁜 코드가 나쁜 이유 - 생산성 저하 2) 보이스카우트 룰 기억하기: 수정전보다 수정후에 더 깨끗한 코드 좋은 코드는 생산성을 상승시킨다! 3) 창발적 설계에서 유의해야 할 사항 규칙에 극단적으로 심취하여 클래스/메서드를 과하게 쪼개지 않을 것 : 실용적 관점에서 타협하기 2. 공동 창작시의 매너 : 나와 동료를 위해 네이밍/ 함수/ 주석/ 포맷팅 시 '팀이 가지고 있는 컨벤션(약속)' 을 우선하여 개발 3. 객체 지향 패턴 1) 캡슐화 2) 어댑터 패턴: 외부 코드 호출시 우리 인터페이스대로 호출하기 위해 사용하는 패턴, 외부 코드와의 호환성을 위해 사용 3) 결합도는 높게, 응집도는 낮게 4) SOLID 원칙 - 하도 많이 인용해서 이제 지겨움 4. 오류 처리 1) .. 2022. 9. 29. 13:55
클린코드(Clean code) 15~16장 : 실제 라이브러리 분석 (JUnit, SerialDate) JUnit, SerialDate 같은 정말 많이 사용하는 라이브러리조차 작가가 여러 가지로 손대고 리팩토링하면서 좀 더 나은 결과물이 나옴을 확인하였음 변수 앞에 붙은 접두어를 제거한다. 의도를 명확히 표현하기 위해 조건문은 캡슐화한다. 즉, 조건문을 따로 메서드로 뽑아내고 적절한 이름을 짓는다. 중복되는 변수 이름을 수정해서 더욱 의미를 명확하게 표현한다. 조건문을 긍정문으로 반전시킨다. 함수 이름을 가독성 있게 수정한다. 수행하는 일이 다른 함수를 따로 분리한다. 오래된 주석 수정 enum을 독자적인 소스 파일로 이동 정적 변수, 정적 메서드를 새 클래스로 이동 변수 이름 변경 새 메서드를 생성해 메서드간 중복 제거 어떤 일을 해도 마찬가지겠지만, 타인의 코드를 비판하거나 / 내 코드를 비판하는 걸 .. 2022. 9. 27. 18:24
클린코드(Clean code) 14장 - 점진적인 개선 1. 코드가 나빠지고, 무언가 잘못되고 있음을 인지: 기능추가를 멈추고 그 상태에서 개선 -> 테스트 코드 작성 : 변경전후 결과가 같아야 함. 모든 테스트가 수정전 상태에서도 통과해야. -> 점진적 개선: 책임에 따라 클래스를 나누고, 코드를 이동하는 등의 개선을 수행 *개선이랍시고 구조를 크게 뒤집어 엎으면 망하는 지름길 아그래서 봇과장님이 저 그냥 이거 다시 갈아엎고 짜면 안돼요? 하면 말렸구나 2. IDE에서 사용하면 좋은 기능 - extract method - change signature: 메소드 파라미터 추가/삭제/변경 - rename - extract variable : 변수 추출 - extract field : 특정 값을 멤버변수로 설정하기 - extract constant : 상수로 추.. 2022. 9. 26. 18:11
클린코드(Clean code) 13장 - 동시성 1. 동시성 프로그래밍 : 어플리케이션을 효율적으로 실행하기 위해 멀티코어를 온전히 활용하도록 구현하는 방식. 서버(코어)를 효율적으로 사용하여, 처리량을 최대화하기 위한 기법. 하나만 주구장창 붙들고 있는 게 아닌, 대기중에 다른일 처리하고 온다든가 하는 것도 동시성의 구현. cf)병렬성: 서버를 늘려 처리량을 늘리는 것 동시성과 병렬성은 "어플리케이션"의 관점에서 (not 클라이언트) 생각할 것. 내 어플리케이션의 효율성을 높이고, 메모리 누수나 자원 낭비 되는 일이 없도록 신경써야 함. 2. 동시성 프로그래밍의 미신과 오해 1)동시성은 항상 성능을 높여준다 (X) : 대기 시간이 길어서 여러 스레드가 프로세서를 공유할 수 있거나, 여러 프로세서가 동시에 처리할 독립적 계산이 충분히 많은 경우에 한정.. 2022. 9. 25. 11:39
클린코드(Clean code) 12장 - 창발성 0. 창발성 : 하위 계층에는 없는 특성이나 행동이 상위 계층/전체 구조에서 자발적으로 돌연히 나타나는 현상. emergence. ex) 개미들의 상호작용 => 개미집 1. 창발적 설계 by 켄트 백 1) 모든 테스트를 실행한다. 모든 테스트를 통과하는 시스템/예측 가능한 시스템을 만들어야 설계 품질이 높아지고, 결합도를 낮추고&응집도를 높일 수 있음 테스트가 안되는 시스템은 검증이 불가능하니 출시해서는 안됨. 2) 중복을 없앤다. 기존 코드 최대한 재활용 하기 (아 찔리는 코드 하나 생각남...) *Template method 패턴 : 알고리즘의 구조를 상위 클래스 메서드에서 정의하고, 하위 클래스에서 세부 알고리즘을 정의 3) 프로그래머의 의도를 표현한다. 이름 잘 짓기 함수/클래스 사이즈를 줄이기 .. 2022. 9. 22. 22:12
클린코드(Clean code) 11장 - 시스템 1. 관심사 분리 객체를 제작하고 의존성을 연결하는 준비과정과, 그 이후에 이어지는 런타임 로직을 분리 즉, 객체 생성과 사용 부분을 분리함. 프로그래머는 로직 구현에만 집중하고, 프레임워크에 객체 생성은 맡겨버리면 됨 2. 의존성 주입(Dependency injection) 객체 의존성은 DI 컨테이너에 맡길 것. 요청이 들어오면 필요한 객체의 인스턴스를 만들고 의존성 설정 (ex. 스프링 IoC) 의존성주입 방법: setter 메소드 / 생성자 인수 등 3. 횡단 관심분리(Cross cutting concerns) 비즈니스 로직, 로깅, 트랜잭션 관리, 보안 등 다양한 관심사가 여기저기 퍼져있으나, 어플리케이션 전반이 가지는 공통의 관심사들은 분리하여 처리하는 것이 효율적. 비즈니스 로직에만 집중하기. 2022. 9. 21. 23:07
클린코드(Clean code) 10장 - 클래스 1. 캡슐화 객체의 실제 구현을 외부로부터 감추는 방식 구현은 감추되, 외부와 상호 작용하는 부분만 노출하기. private 로 제한하고 getter 를 사용하여 변수를 읽는다거나, push/pop을 사용하는것도 캡슐화의 좋은 예제 2. 단일책임 원칙 클래스는 최대한 작게. 하나의 역할만. 설명도 25단어(만일/그리고/하며/하지만 같은 접속부사 없이) 이내로 짧게 가능하게. https://career-gogimandu.tistory.com/27 객체지향 설계에서 꼭 필요한 SOLID 5대원칙(SRP/OCP/LSP/ISP/DIP) SRP : Single Responsibility Principle, 단일책임 원칙 OCP : Open Closed Principle, 개방-폐쇄 원칙 LSP : Liskov S.. 2022. 9. 19. 22:28
클린코드(Clean Code) 9장 - 단위테스트 1. 테스트 코드가 중요한 이유 : 실수를 잡아주는 역할, 실제 코드 못지 않게 중요 - 테스트케이스는 변경이 쉬워야 한다 - 테스트코드가 지저분하면 안 하느니만 못하다 - 테스트는 실사용에 적합한 설계를 유도 - 테스트는 자동화되어야 한다 : 실제로 경우의 수 나누어서 직접 테스트하기 머리 터짐. * Given(테스트 조건) - When(테스트 동작) - Then(결과 확인) 패턴 2. 테스트의 종류 - Unit test : 프로그램 내부 개별 컴포넌트 동작 테스트. 배포 전 자동 실행 - Integration test : 이바닥 말로 통테. 프로그램 내부의 개별 컴포턴트를 합쳐서, 동작을 테스트. 컴포넌트 간의 인터랙션을 확인하기 위해 필요한 과정 - E2E test : end to end test... 2022. 9. 18. 16:15
728x90
반응형