개발자

이 글은 내 1년차 개발자 회고 이다. 0. 들어가며 올해는 내가 회사에 입사해서 개발자로 일을 한 첫해로 모든 게 낯설고 신선했다. 그때 내 마음은 다음 문장으로 표현할 수 있었다. "내가 학교가 아니라 현업 실무에 투입된다고? 기능이 아니라 버그를 만들 것 같은데ㅎㅎ" 그리고 예상은 벗어나지 않았다. 1. Hello Wor.. 아니 Company! 정확히는 12월부터 입사해서 한 달 동안 교육을 받고 1월부터 실무에 투입되었다. 내가 배치된 팀에서 사용하는 주 언어는 JAVA였고 주 프레임워크는 Eclipse RCP를 사용했다. 얕게 공부를 해왔던 탓에 사용할 줄만 알지 JAVA가 어떤 언어인지는 하나도 모르고 객체지향 프로그래밍도 못하는 상태(디자인 패턴도 몰랐다.)에서 실무에 적응하는 과정은 재미..
· JAVA
자바에서는 문자열 대소문자 변환에 대해 함수를 지원해줍니다. toUpperCase() javadoc에서 가장 첫 문장을 가져왔습니다. Converts all of the characters in this String to upper case using the rules of the default locale. String에 있는 모든 문자를 default locale의 규칙을 기반해 대문자로 변환해줍니다. 즉 모든 문자를 대문자로 바꿔준다는겁니다. toUpperCase함수의 반환값은 String입니다. 사용법은 다음과 같습니다. String testStr = "PeterJames"; String testStrUpperCase = testStr.toUpperCase(); testStrUpperCase에는 ..
· JAVA
blogs.sap.com/2019/10/07/does-32-bit-or-64-bit-jvm-matter-anymore/ Does 32-Bit or 64-Bit JVM matter anymore? | SAP Blogs 0 Likes 1,907 View 0 Comments blogs.sap.com 위 블로그에 정리가 잘 되어있다고 생각해 나름 요약하며 번역을 해 보았다. 일단 대부분 사람들은 64비트가 32비트보다 크다고 생각해서 64bit JVM의 성능이 32bit JVM보다 훨씬 성능이 좋다고 생각한다. 아쉽게도 64bit JVM이 32bit JVM보다 성능 저하를 보일 수 있다. 퍼포먼스에 대한 문제점이 있다면 왜 64bit JVM을 사용하는가? 32bit JVM 의 최대 메모리 공간은 4gb이다. 그..
프로그래머스 문제 중 가운데 글자 가져오기 문제를 풀어보았습니다. programmers.co.kr/learn/courses/30/lessons/12903 코딩테스트 연습 - 가운데 글자 가져오기 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s ret programmers.co.kr 비교적 쉬운 문제라 제가 생각한 풀이 방법은 문장의 길이가 2로 나누어 떨어지는 경우와 나누어 떨어지지 않는 경우로 나누어 가운데 글자만 가져오는 방식으로 풀었습니다. def solution(s): answer = '' word_len = len(s) if word_len..
· JAVA
동일한 데이터 타입을 가진 것들은 모은 집합을 컬렉션이라 부른다. 컬렉션은 알아두면 정말 잘 쓰는 것들이고 그러기 때문에 기본적인 것들이다. 자료구조를 어느 정도 공부한 후 보면 이해가 빨리 된다. 자료구조를 쉽게 쓰라고 만들어 놓은 것들이기 때문에... 아래 표를 살펴보자. 출처 : https://www.javatpoint.com/collections-in-java이고 상당히 정리가 잘 되어있는 사이트이다. 자바에서 제공하는 컬렉션 프레임워크는 아래와 같은 구조를 가진다. 위 표를 말로 풀어 쓰면 아래와 같이 정리가 된다. Collection인터페이스는 Collection을 순회(탐색)하기 위한 Iterable 인터페이스를 상속받고 있다.(인터페이스가 인터페이스를 상속받는 경우는 구현이 아닌 상속으로 ..
· JAVA
SWT를 사용하여 GUI를 만들다 보면 마우스 스크롤 이벤트를 막아야할 때가 있습니다. 막기 위한 코드는 아래와 같습니다. swtObject.addListener(SWT.MouseVerticalWheel, new Listener() { @Override public void handleEvent(Event event) { // TODO Auto-generated method stub event.doit = false; } }); 막아야 하는 객체(swtObject)에 대해 리스너를 등록하고 막아야 하는 이벤트인 SWT.MouseVerticalWheel에 대해 설정해줍니다.
알고리즘을 조금씩 공부하며 제가 공부하거나 작성한 풀이에 대해 공유하고자 합니다. 물론 더 효율적인 방법이 많겠지만 이렇게 코드를 작성하는 사람도 있구나 하고 봐주시면 될 것 같습니다. 코드에 대해 최적화나 컨벤션은 맞지 않습니다. 아래 링크는 프로그래머스에서 풀 수 있는 모의고사 라는 이름의 문제입니다. https://programmers.co.kr/learn/courses/30/lessons/42840 코딩테스트 연습 - 모의고사 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 �� programmers.co.kr 문제를 풀기 위해서는 리스트를 순회하며 각 패턴을 ..
· JAVA
SWT를 이용하여 개발을 하면 종종 막히는 부분들이 있다. 그 중 하나는 방향키의 입력을 사용자로부터 막아야하는데 그 코드는 아래와 같다. swtObject.addListener(SWT.KeyDown, new Listener() { @Override public void handleEvent(Event event) { event.doit = false; } }); 막아야 하는 객체에 대해 listener를 붙여주고 SWT.KeyDown에 대해 설정해주면 된다.
· JAVA
ctrl + shift + t : class 검색 ctrl + h : 전체 검색 (hint 라고 생각하면 금방 외움) ctrl + l : 해당 라인으로 이동(line의 약자인듯) 함수나 변수를 클릭하고 ctrl + shift + h : call hiererchy (해당 변수, 함수가 어디서 호출되고 있는지 확인) ctrl + shift + r : open resource (리소스 검색) (resource의 약자?) ctrl + shift + f : 자동정렬 ctrl + shift + o : import 정리(아직 import안된 것들은 import해주고 미사용 import는 제거)
· JAVA
StringBuffer를 사용하는 이유 Q. StringBuffer가 뭐고 String 과 무슨 차이가 있어요? A. 둘다 문자열 만들어줍니다. 차이점은 String은 immutable 객체입니다. StringBuffer는 아닙니다. Q. 그게 뭔데요 A. String은 immutable(불변적인) 객체입니다. 즉 공간에 한번 잡히면 더이상 그 값이 변하지 않아요. Q. 이렇게 하면 잘 변하는데요? Stringtmp = "abcd"; tmp += "efg"; System.out.println(tmp); A. 그거 내부적으로는 이렇게 진행됩니다. Stringtmp = "abcd"; tmp = newStringBuffer(tmp).append("efg").toString(); System.out.printl..
Berno
'개발자' 태그의 글 목록