2020-11-26-TIL
2020.11.26 TIL
paint() vs repaint()
paint는 콜백함수라서 JVM이 이벤트에 따라서 자동으로 호출해준다. 하지만 repaint는 내가 직접 호출하는 메소드이다.
public 메소드는 외부에서 사용하는 메서드이므로 보통은 더 상위에 작성한다.
main thread 는 main method를 실행한다. thread.start()는 thread.run()을 실행한다.
finally는 무조건 실행되므로 조심해야한다!!!
프로그램은 스레드를 메서드 단위로 실행시킨다.
스레드에서 static변수는 스레드 간에 공유가되고, 그냥 변수는 스레드 별로 존재한다
공유자원에 접근하고 lock/unlock하는데에 시간이 훨씬 더 걸린다
덧셈을 하나의 종이에 두명이 번갈아 가면서 더하는것보다 종이 두개에 두명이 각자 계산해서 더하는게 빠르다
현재는 스레드를 직접 프로그래밍 하지않고 좀 더 추상화된 단계인 테스크를 쓴다
PC는 스레드마다, 힙도 스레드간 공유가능, 스택은 공유 안됨 -> 스택프레임이 스레드별로 쌓임
https://mkyong.com/java/how-to-compare-dates-in-java/
NoSuchElementException
https://stackoverrun.com/ko/q/12796403
가계부 프로젝트
Exception in thread “main” java.util.NoSuchElementException
next()가
https://sourceforge.net/projects/javaledger/
Can’t load IA 32-bit .dll on a AMD 64-bit platform
https://huammmm1.tistory.com/445
https://goddaehee.tistory.com/184
프로그래머로 취업할 때 자신을 어필하는 방법
- 테스트코드를 잘 작성했는가?
- 문서화가 잘 되어있는가? (개요, 빌드 및 실행 방법) -> 사려깊게 친절하게 작성하기
- JAVA 최신 버전의 새로운 기능, LTS의 의미 등 메인 언어에 대한 기본적인 지식
- 책을 번역하거나 책을 쓰거나 컨퍼런스에 참여하는 등의 스펙은 무조건 플러스
- 스프링을 많이 알아서 취직이 되는것이 아니다. 스프링을 빨리 학습할 수 있는 능력이 더 중요
- 스프링 API를 외우는 것이 중요한게 아니라, 메타학습이 중요!
- IOC개념, DI개념, AOP가 어떻게 구현되었는가, 다이나믹 프록시? 프록시 패턴?
- http servlet을 스프링이 어떻게 추상화 시켜놓았는지
- 깃허브에서 오픈소스 프로젝트에 기여, 만들기 등
- Hacktoberfest등에 참여하는 방법
- 지지를 받고 있는 오픈소스에 툴이나 라이브러리를 만들었다는 것은 좋다
- 취직을 하기위해서 책을 번역하거나 하진 않는것이 좋다. 학습을 위해서 번역하거나 스터디를 하거나 발표를 하거나 오픈소스 기여를 하는 것이 바람직하다.
- 얼마나 꼼꼼한가? 얼마나 논리적으로 사고하는가? 얼마나 문제해결능력이 있는가? 소프트웨어 개발역량, 기본소양이 갖추어졌는가?
- 그것들을 좋아한다면 결국 직업으로 삼았을때 행복감을 얻을 수 있을것이다.