최근 My Project Manger에서 InterSystems Cache ObjectScript 작업을 요청했습니다. 이전에는 Java Developer (J2EE)로 일해 왔습니다. 그래서 내 질문은 Java에서 캐시가 얼마나 다른지입니다. 비교하면 좋을 것입니다.InterSystems Cache ObjectScript 대 Java 웹 응용 프로그램 개발
답변
Caché ObjectScript는 Java와 매우 다르며 공통점이 거의 없습니다. 메타 언어 (클래스 정의)가 내장되어 있고 좋은 코드를 작성하기 위해 알아야 할 많은 기능이있는 동적 유형의 컴파일 된 스크립팅 언어와 비슷합니다. 모든 코드는 저수준 (그러나 꽤 읽을 수있는) 소위 루틴 코드로 컴파일되며 DBMS Caché 및 해당 애플리케이션 엔진에 의해 처리됩니다.
예를 들어 this reference을들 수 있습니다. 당신이 알다시피, 같은 많은 이상한 기호와 구조가있다 $
, $$
, $$$
, ##class
, &sql(...)
, &javascript<...>
, #dim
, $System
, .#
, $get
, $zu(...)
, %
, ^%
, { ... }
, ... (이 목록이 큰) . 일부 언어 기능은 처음부터 예측할 수 없습니다. 예를 들어, $get(...)
함수는 기금처럼 보이지만 $data
및 일부 다른 시스템 함수뿐만 아니라 try/catch 문처럼 자동으로 작동합니다.
그래서 InterSystems 문서 작업 준비를하십시오! 또한 최근에 개발 된 InterSystems community은 훌륭한 리소스입니다. 인터넷 검색을하는 동안 인터넷에서 몇 가지 답변을 찾을 수 있지만 "시스템 간"또는 "objectscript"키워드로 검색하는 것을 명심하십시오. 그러나 당신이 거기에서 찾을 수없는 많은 것들이 있습니다.이 경우 InterSystems의 문서 또는 커뮤니티를 사용하여 질문하십시오. 일단 당신이 언어에 익숙해지면 (6 개월 이상 걸렸습니다), 당신은 더 자신감을 가질 것입니다.
또한 Caché ObjectScript는 문자 그대로 "공룡"언어이며 시간이 지남에 따라 업그레이드된다는 점을 언급 할 필요가 있습니다. 그래서 많은 다른 기능이 있습니다. 그 중 일부는 더 이상 사용하지 않아야합니다. 예를 들어 OOP 개념을 도입하기 전에 사람들이했던 것처럼 루틴으로 코드를 작성하는 대신 클래스를 사용해야합니다. ObjectScript의 JSON 기능 (ObjectScript 내에 JSON을 작성하는 기능)은 약 1 년 전만해도 개연성이있었습니다. 또한 Caché에서 "선사 시대"코드를 많이 발견 할 수 있으며이를 정상적으로 받아 들여야합니다. 이는 실제로 거대한 생태계입니다.
희망 해피 해킹!