본문 바로가기

Programming50

[javascript] 자동 세미콜론 삽입기능으로 인한 오류 // 세미콜론 없는 버전let a = 1let b = 2[a, b] = [b, a]console.log(a, b)console.log("---")// 세미콜론 있는 버전let c = 1;let d = 2;[c, d] = [d, c];console.log(c, d); 자바스크립트에서는 세미콜론이 선택적이다.자바스크립트에서는 자동 세미콜론 삽입(ASI)이라는 기능을 갖고있는데개발자가 세미콜론을 생략하면 엔진이 자동적으로 세미콜론을 삽입한다. 위의 코드에서 세미콜론이 없는 코드를 실행하면 오류가 발생하는데이는 "[" 으로 시작하는 줄이, 이전 줄의 연속으로 해석되어 발생한 일이다.따라서 모호성을 배제하기위해 세미콜론을 사용해야한다. 2024. 10. 9.
[JAVA] 레거시 프로젝트 빌드오류 진짜 레거시 코드들을 이용해서 프로젝트 만드시는분들 다 아실거라고 생각하지만빌드가 안되는경우가 있음. 평일 기본 30~40정도의 방문횟수가 나오지만 질문관련해서 댓글이 뭔가 더 없어서그럴일은 없다고 보고, 왠만한 SI업체들도 대부분 1.8 이상의 자바버전을 사용하고 있기 때문에없을거라보지만 가끔 xml설정때문에 오류가 나는경우가 있음.(컴파일이 아니라 받은 소스코드를 돌려보기만해도) 말도안돼지만 이 경우에 xml스키마 부분을 살펴봐야하는데https 주소에서 스키마를 참조하는 부분이 있는데https -> http 로 변경만 해주면됨. 해결원리는 그냥 버전이 달라져서기존에 돌아가고 있는 프로그램에서는 문제가 없지만기본 내용은 같지만 내용을 받아오기위한 프로토콜이 달라져서 그런것뿐임.메이븐 업데이트할때, 메이.. 2024. 7. 2.
[JAVA/Netty] 클라이언트의 연결 종료 확인 클라이언트 입장에서 Bootstrap을 다루고 연결 종료를 확인한 뒤 재접속을 시도하려 했지만 연결 종료를 확인하는게 불가능하다는걸 알았다. try { if( bootstrap != null) { Future future = bootstrap.config().group().shutdownGracefully(); logger.debug("future shutdownGracefully() Status :: isDone : {} , isCancelled : {} " , future.isDone(), future.isCancelled() ); // while( !bootstrap.config().group().isShutdown() ) { // logger.debug( "connect info : {} / bo.. 2023. 1. 17.
편하게 코딩하기 편하게 코딩하기 주요 요점 1. 향후 확장을 예상한 설계 2. 다양한 오류를 예상한 초기 값 세팅 3. 동일한 형태의 코드를 메소드 또는 클래스화 4. 낮은 결합도를 유지 5. 이해하기 쉬운 최대한 짧고 간결한 코드 6. 디자인 패턴 활용 7. 한눈에 이해가 가는 변수명 및 메소드명 선언 (길어도 됨, 긴 건 IDE에서 제안 하는 변수명 쓰면 됨) 2023. 1. 3.