전체 글 114

24년 1회 정보처리기사 합격

저도 이제 기사랍니다    공부전략밑에 언급한 공부자료들 위에서 아래 비중으로 시간들여 봤습니다. 필기실기 둘다 수제비(2020) 교재로 쭉 읽고 단원마다 종합문제 풀고 빠르게 다 훑는 것에 의의를 뒀습니다.기출 풀면서 교재 어디어디에서 나오는지 뭐 중점으로 보는지 오답기록하면서 포인트랑 빈도 체크했습니다.막판엔 시간없어서 연습문제사이트 기출 답 보면서 외웠고, 그외자료 부분은 거의 안봤어요. 실기는 필기 본 후 깨끗해진 뇌로 시험 1주일전에 시작했습니다. 일단 문제를 풀어봐야 감잡기 좋아요. 코딩문제가 거의 반이라 C, C++, Java, Python 각 언어별 차이랑 연습 충분히 하시길전 예전에 SQLD 따놔서 SQL은 어렵지 않았습니다만 처음 다루면 직접 쿼리 돌려보길 추천! 공부자료주 교재 및 기..

Event\Conference 2024.06.21

유용한 코드 모음

2024-06-17 체크박스 다중선택 - 여러개 체크된 값 합치기$('#anyTypeList').val("");var chkList = "";var checkbox = $("input[name=anyType]:checked");checkbox.each(function(i) { var chkValue = $(this).val(); chkList += chkValue + ",";});chkList = chkList.slice(0, -1);$('#anyTypeList').val(chkList);  반복하기 위해 리스트 만들 경우 (참고: [iBatis] iterate )String [] anyTypeList = map.get("anyTypeList").toString().split(",");List..

!dea 2024.06.17

[iBatis] iterate

iBatis iterate문 태그property : 파라미터명  - 반복돌릴 대상들이 들어있는 리스트prepend : 쿼리로 쓰일 문자 - iterate문 전에 쓰인다 (AND, IN, WHERE 컬럼명 IN 등)open : 구문이 시작될때 삽입할 문자열close : 구문이 종료될때 삽입할 문자열conjunction : 반복되는 사이에 출력할 문자열업무에서 활용해야해서 엄청 찾아봤는데 보통 AND, OR, IN 문을 쓰지나처럼 해당되지않는 것을 찾는 NOT IN 용으로는 iterate 쓴 예문이 없어서 시행착오 많이했다."AND chktype NOT IN" prepend 으로 넣으니까 안되더라. 웬만하면 그냥 쿼리 쓰자.-- DELETE문이나 SELECT문 쓰면 된다DELETE FROM tb_sample..

Language/JAVA 2024.06.14

Slack Incoming Webhook

두고두고볼 슬랙 웹훅 정리  Slack Incoming Webhook 2가지 방법Slack Incoming Webhook(인커밍웹훅) 설정에는 2가지 방법이 있습니다. 앱 생성(추천), 앱 추가(비추) 를 각각 알아봅니다.velog.io  Webhook URL 웹훅 URL : https://hooks.slack.com/services/~생성 방식 2가지앱 생성https://api.slack.com/ 에서 앱 생성Collaborators 공용계정 추가 (웹훅 만든 사용자가 퇴사할 경우 웹훅 URL 비활성화 방지)Incoming Webhooks 선택 > On > Add New Webhook to Workspace앱 추가 (퇴사자 방지 불가)추가할 채널에서 Incoming Webhooks 설치Add to Sl..

개발 한 스푼 2024.05.31

Stream API 2 : Collection 합 구하기

Stream API에서 Sum() 함수를 사용하려면 기본형 특화 스트림(Primitive Type) 스트림을 사용해야한다.정수형 원시스트림IntStreamLongStreamDoubleStream 목표List 내의 map 내의 int value를 가진 특정 키를 찾아 합하고 싶다 코드// 1. 순회할 리스트List testList = testDAO.selectTestList(paramMap); // testList : [{"cnt": 1}, {"cnt": 2}, {"cnt": 3}, {"cnt": 4}]// 2. 리스트 내 Map 순회int totalCnt = testList.stream() // 3. Map 내에서 더할 대상인 cnt를 찾아 IntStream으로 변환 .mapToInt(i ->..

Language/JAVA 2024.05.31

[PyCon Korea 2023] Python으로 전자음악 작곡하기

Python으로 전자음악 작곡하기 카테고리 : 일상 / 사회 (Life / Social) 난이도 : 중 발표 시간 : 40분 언어 : 한국어 발표 장소 : 105호 발표 일시 : 2023년 8월 13일 (일) / August 13th (Sun) KST 11:40 ~ 12:20 발표자: 유태영 작년 8월 13일 코엑스에서 열린 파이콘 한국 2023 세션에 다녀왔다. 참가비 7만원어치 질좋은 티셔츠를 아직까지 잘 입고 다닌다. 일요일 세션 중 python으로 numpy와 pedalboard를 이용해서 신디사이저를 구현하는 과정이 특히 인상깊었다. Spotify 오픈소스 프로젝트인 Pedalboard 는 리버브와 에코 같은 이펙트와 소리의 진폭 조절 등 간단한 믹싱 기술들을 파이썬으로 구현할 수 있게 기능을 ..

Event\Conference 2024.03.24

[항해+] 2주차 클린아키텍처

Software Architecture Pattern 좋은 아키텍처 패턴이란 지속적으로 성장가능한 안정적인 소프트웨어를 잡기위한 최고의 가이드라인 지켜야 할 기본적인 개발 가이드라인을 잡아주는 틀 참고 DIP(의존역전 원칙) - 인터페이스로 통신 OCP(개방-폐쇄 원칙 - 확장에는 Open, 수정에는 Close, ex. Repository Interface) 1. Layered Architecture 상위 계층에서 하위 계층을 호출하는 단방향 흐름을 유지 상위 계층이 필요한 기능을 하위 계층 구현으로 전달 비즈니스 로직이 핵심이 아니며 보호받지 못함 DIP 준수 OCP 원칙이 지켜지지 않는다. DB에 수정이 생기면 위층 레이어로 상방전파된다. 2. Hexagonal 아키텍처 애플리케이션 핵심은 비즈니스 ..

항해플러스 2024.03.23

[항해+] 1주차 TDD

학습목표 테스트 가능한 코드와 테스트 코드 작성에 집중하며, TDD 기반 요구사항 기능 개발 TDD, Testable Code, Test Code 에 대한 학습을 진행합니다. 기초 학습자료로 부족한 부분을 학습합니다. 주어진 과제를 분석하고 TDD 기반으로 개발을 진행합니다. 학습자료 클린 코드, 아키텍처 그리고 TDD by 허재 Test Driven Development 빠른 변화에도 새로운 기능을 적용하고 유지보수 및 장애 발생시 대처를 유연하게 할 수 있는 소프트웨어 설계 방법론 최대한 기능 분석 후 핵심이 되는 테스트 코드부터 작성하고 이를 완성하기 위해 적용된 아키텍처에 맞는 기능 개발 진행 백엔드 개발자로서, 요구사항을 분석하고 기능을 올바르게 완성하기 위한 TC 를 작성하는 방법을 익힙니다...

항해플러스 2024.03.22

[항해+] 시작하는 마음

항해플러스 백엔드 4기를 시작했다. 오늘이 첫날 OT.. 달려보자! 커리큘럼 1부 타임테이블 13:00 - 14:30 OT 14:30 - 15:20 발제 15:30 - 16:30 팀별 모임 16:30 - 17:00 공개 Q&A 지금까지의 회고 잡부 API 상하차로 일한 지 어언 1년.. 정체성의 혼란 봉착 하지만 난 창창하다! 체계 있는 교육을 받으며 실무 경험을 쌓고 싶다 항해 플러스 참여 계기 대규모 대응과 모니터링이 들어가있는 커리큘럼이 마음에 들었다. 직무역량 강화에 본 목적을 두고 있다. 3기까지는 오픈소스도 다뤘다고 했는데 빠져서 아쉽지만 자료 공유 부탁해봐야겠다 향후 5년 뒤 커리어 방향성 DB, 데이터나 의료 관련 도메인 전문성을 가지고 박사 학위 진행중일듯. 나만의 전문성을 구축하고 지식..

항해플러스 2024.03.16