억대 연봉을 위한 인간수업
반응형

0. 자바는 관습에 의해 구축된게 굉장히 많은 언어이다. 이렇게 하면 이렇게 이해할거야~ 라고 가정하는게 많다.

 

1. 클래스 이름의 첫글자는 대문자, 메소드명은 반드시 소문자로 시작해야한다

  •  특히 라이브러리를 가져올경우, 이 대소문자 구분 패턴에 의존해서 만들어 진게 꽤 많다.


2. 의미있는 이름쓰기
 -> 코딩테스트를 할 경우 n,k등 이름을 지정해주면 그냥 그대로 쓰는게 디버깅할때 편하다


3. 메인함수에서 코드 짤일은 거의 없다
 -> 코테에서도 마찬가지, 함수 만들어서 코딩을 해버릇 하는게 좋다


4. 코테에서 println 쓸일은 거의 없다.
 -> 백준에서 print만 쓰고, 값을 확인하는 등 보조로도 사용안한다
5. 코테에서 확인하기 위해 프린트 찍은건 지우거나 주석처리를 반드시 해줄것!
6. 변수 선언과 입력은 동시에 하는게좋다
 -> ex) int n = sc.nextInt();
7. 반복문에서 한번쓰는 변수는 반복문 안에 선언하고 버려지도록 하는게 좋음. 그러나 반복문 안에서 선언해주기.
-> 쓰는 변수는 최대한 가깝게 쓸것
8. 스캐너 sc 만들때 변수명 sc는 바람직 하지않으니 풀네임 쓰는게 되도록 좋다 : scanner로!
 -> Scanner 대신 var scanner= ... 이런식으로 var 넣어서 선언해줘도 됨.
9. import에서 안쓰는건 정리해주자
10. 코테에서는 귀찮으니 import java.util.*; 로 사용한다.
11. 변수는 사용하는곳 가깝게, 끊어서 선언해주는게 좋음. : 디버깅할때 편하다
12. 자바에서 변수 첫글자를 대문자로 쓰는경우는 없다
13. 자바에서 변수명에 _ 안씀.. call_ch말고 callCh 이런식으로 사용한다.
14. 스페이스 잘 맞출것 : int a= 10;, int a = 10; -> 이런거 통일시켜주자
15. 입력값은 왠만하면 직접 안바꾸는게 좋음. 왜냐면 나중에 입력값과 비교하는 게 있을 수 있기 때문이다
 -> 그러니 입력값은 다른 변수를 선언한 다음 거기에 저장해서 쓰자!
16. for(var cur : str.toCharArray()) -> string을 char의 배열로 바꾸는 거임.
 -> 자바는 String 타입인 변수를 ==으로 비교 못함!ㅠㅠ
17. tmp는 뭔지 유추하지 못해서 피해야하는 변수명임
18. char top = stack.peek(); -> peek()은 스택 제일 위의 값을 pop하지 않고 가져옴.
 -> 그래서 peek으로 가져와서 비교하고 지우는게 좋다. 왜냐면 뽑았다 다시 넣는 상황이 있을수 있기때문에(큐인경우 정말 곤란)
19. if문은 조건에 굳이 ==true를 안써도 됨. 왜냐면 조건이 true여야만 실행이 되서
 -> if(n.contains(tmp)) : true면 실행
 -> if(!n.contains(tmp)) : 이건false일 경우 실행
20. 프로그래머스에서 실제 코딩테스트를 많이봄
21. 입력받는게 복잡해서 보통 클래스를 새로 선언해서 입력 받는 클래스로 기능을 나눠서 씀.
22. 변수이름이 복수인경우 배열이거나 리스트인 경우가 많음. 단수면 int같은걸 씀
-> 예를들면count, counts차이!
23. nowArray = nowArray%currentCount;
-> 자주쓰는 테크닉임!! 나머지에 따라 배열 순서 초과시처음으로 돌아가는거!!
24. arraylist는 배열을 이용해서 리스트를 구현
 -> list는 인터페이스임.. 인터페이스는 다른 종류를 같은 부류로 혼합해서 쓸 수 잇는거임(list = 개, arraylist =포메)
25. 큐는 Queue<> user = new ArrayDeque<>(); 로 선언가능; 어레이 데큐는 배열 큐임
26. int head = user.poll(); 첫번쨰 값 가져옴
27. 배열은 remove 가 없다.. 그래서 지울 위치 뒤에있는걸 앞으로 한칸씩 땡겨와야함;

28. 자바는 런타임에 클래스를 추가하는 기능이 많다. 그래서 객체를 new로 생성할 수 없는 경우가 많아서 팩토리 패턴을 많이 사용한다

29. 하나의 소스파일엔 하나의 클래스만 들어가는게 정석이다

30. 소스코드의 파일명과 클래스명이 일치해야한다

반응형
profile

억대 연봉을 위한 인간수업

@회뜨는참치

이 글이 당신에게 조금이라도 도움이 된다면 좋겠습니다.