web 프로그래밍
-
[javascript] javascript 는 인터프리터 언어?web 프로그래밍/javascript 2024. 10. 19. 15:04
javascript는 많은 개발자들이 아직도 인터프리터 언어로 인식 하고 있습니다. 저도 그렇게 생각했었고요. 하지만 리액트 및 javascript 를 학습하다보니 javascript 는 인터프리터만 사용하는게 아니고 JIT(Just-In-Time) 컴파일러를 사용한다고 하네요. 자바스크립트의 초기 역사에서는 인터프리터 언어로서, 소스 코드를 한 줄씩 읽고 실행하는 방식으로 동작했지만, 최신 자바스크립트 엔진(예: V8, SpiderMonkey 등)은 성능 최적화를 위해 JIT 컴파일 기술을 도입했습니다. 이로 인해 자바스크립트는 다음과 같은 방식으로 처리됩니다.초기 해석 (Parsing): 먼저 자바스크립트 코드를 읽어서 구문 트리(Syntax Tree)를 생성합니다.바이트코드로 변환: 이 구문 트리를..
-
[javascript] isNaN() 과 Number.isNaN() 의 차이점web 프로그래밍/javascript 2024. 9. 22. 17:13
자바스크립트에서 숫자 타입인지 확인할 때 isNaN 을 사용했는데 ES6 에서 추가된 Number.isNaN 과 무엇이 다른지 잘 모른상태로 사용하다가 이번에 자바스크립트 기본부터 다시 학습하며 어떤점이 다른지 확인해보았습니다. isNaN과 Number.isNaN은 둘 다 숫자가 NaN(Not-a-Number)인지 여부를 확인하는 함수이지만, 동작 방식과 검사 범위에서 차이가 있습니다.1. isNaN()전역 함수로, 입력값이 숫자가 아닌 경우에도 내부적으로 암묵적 형 변환을 거쳐 NaN인지 여부를 판단합니다.즉, 숫자로 변환 가능한지 여부를 먼저 검사하고, 그 결과가 NaN이면 true를 반환합니다.동작 방식:입력값을 먼저 숫자로 변환하고, 변환된 값이 NaN이면 true, 그렇지 않으면 false를 반..
-
NginX 배포 경로 설정 및 URL 직접 입력시 페이지 찾을 수 없는 문제web 프로그래밍/기타 2023. 1. 9. 19:04
◎ NginX 배포 react 로 작업 한 내용을 배포하려고 하는데 NginX 로 배포하는 방법을 많이 사용하는것 같아서 NginX 를 사용하여 배포하려고 설치하였습니다. NginX 설치 방법은 구글에서 검색하면 많이 보실수 있으므로 생략하고 지나가겠습니다. NginX 로 배포하기 위해서는 빌드 파일이 필요합니다. vscode 로 작업한 내용을 빌드하기 위해 터미널에서 아래와 같이 입력합니다. react run build 잠시 시간이 걸린 후에 build 폴더가 생성 됩니다. 생성된 빌드 폴더를 NginX 에서 배포하는 폴더로 옮기던지 경로를 수정해줘야합니다. NginX 폴더 -> conf 폴더에 nginx.conf 파일에서 수정합니다. 경로를 바꾸고싶다면 44 번째 줄의 root 옆에를 수정. 경로는..
-
윈도우 방화벽 열기web 프로그래밍/기타 2023. 1. 9. 17:48
윈도우에서 웹 개발한 내용을 배포할 때 제대로 URL 주소를 입력했음에도 외부에서 접속할 수 없는 경우가 있었습니다. 예를 들면 local 에서 실행하면 잘 나오는데 모바일로 해당 ip 주소를 입력하고 들어가면 연결되지 않는 문제가 있었죠. 문제가 뭔지 생각해보니까 방화벽을 허용하지 않는 문제 같아서 방화벽을 허용해주니까 이상없이 잘 되었습니다. 윈도우 방화벽 허용하는 방법을 간단히 정리겸 남겨보려고 합니다. 1. 방화벽 설정 화면으로 이동 고급 설정 클릭 2. 새 규칙 추가 3. 규칙 종류 선택 포트번호를 허용할 것이기 때문에 포트 선택하고 다음 클릭 4. 특정 로컬 포트 선택 및 입력 만약 90번 포트를 열기 위한것이면 90을 입력하고 다음 클릭 5. 연결 허용 6. 규칙 적용 시기 모든 항목 선택 ..
-
oracle cloud ssh - private key files are Not accessible by others 에러web 프로그래밍/기타 2022. 4. 18. 23:54
It is required that your private key files are NOT accessible by others. 전체 에러 구문은 아래와 같습니다. Permissions 0644 for 'ssh-key-2022-04-18.key' are too open. It is required that your private key files are NOT accessible by others. This private key will be ignored. Load key "ssh-key-2022-04-18.key": bad permissions opc@xxx.xxx.xxx.xxx: Permission denied (publickey,gssapi-keyex,gssapi-with-mic). 오라클 클라..
-
[spring boot] Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release.web 프로그래밍/intelliJ 에러 2021. 9. 27. 14:10
Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release. 깃허브에서 원격 저장소 내용을 클론해와서 실행했는데 위와 같은 에러가 나타났습니다. 이러한 문제는 JDK13 에서 -Xverify, -noverify 옵션이 제거 되면서 나타나는 오류라고 합니다. 해결 방법은 아래 순서대로 진행하시면 됩니다. 1. intelliJ 에서 우측 상단에서 Edit Configurations... 를 선택해줍니다. 2. 중간쯤에 Spring Boot 에서 Enable launch optimization 항목의 체크를 풀어주고 ok 를 눌러줍니다. 3. 실행 하면 더이상 이전과 같은 경..
-
web service 개발 SOAP 와 RESTweb 프로그래밍/web 공부 2020. 6. 21. 18:04
web service는 단순하게 보면 client의 요청(request) 과 server의 응답(response)으로 구성 web service를 개발 하기 위해 SOAP 또는 RESTful 을 이용함 ★ SOAP(Simple Object Access Protocol) : HTTP, HTTPS, SMTP 등등의 프로토콜을 이용해서 XML 기반의 메세지를 네트워크상에서 전달할 수 있는 시스템 기본 구조는 Envelope 안에 Header와 Body가 들어있다. 간단한 메세지를 보내는것조차 앞뒤에 부가적인 정보가 붙으며, 그에 따른 오버헤드가 심하며 개발하기가 쉽지 않고 무겁다. 그래서 최근에는 RESTful 방식을 더 많이 사용한다. ★ REST(REpresentational State Transfer)..
-
[intelliJ] cannot run program '/path/tomcat/bin/catalina.sh' error=13 permission deniedweb 프로그래밍/intelliJ 에러 2020. 5. 14. 11:43
cannot run program '/path/to/tomcat/bin/catalina.sh' error=13 permission denied 맥에서 intelliJ 설치 후 톰캣과 연동하고 웹 프로젝트를 실행했는데 에러가 나타났습니다. permission denied 인걸 보면 권한 관련 에러인거 같은데 어디서 수정해야할지 모르겠습니다. 구글에서 찾아보니 간단하게 해결 가능한것 같네요. Terminal 에서 tomcat의 bin 디렉토리까지 이동 후 거기에서 아래 내용을 입력해 주셔서 파일 권한을 변경해주시면 됩니다. 입력할 내용 : chmod a+x /path/to/tomcat/bin/catalina.sh 이렇게 입력하신 후 다시 실행해보시면 이상없이 잘 실행 되실겁니다.