거시적으로:
1. 기술적 폭 측면에서
적어도 다양한 오픈 소스 기술에 능숙해야 하며, Strutsspring의 소스 코드를 연구한 경험이 있어야 합니다.
2. 프로젝트 경험상
저는 여러 대형 프로젝트를 처음부터 끝까지 따라왔습니다. 시작은 수요 조사를 포함한 수요 단계를 말합니다.
종료는 유지보수 단계를 포함한 온라인 배송 이후를 의미합니다.
3. 아키텍처 경험
분산 시스템 아키텍처 및 개발 경험이 있습니다. 그는 시스템 간 구조 최적화 및 데이터 스토리지 성능 지표에 대한 광범위한 경험을 보유하고 있습니다. 캐싱, 데이터베이스의 수직 분할, 비즈니스 추상화 및 수평 분할 등은 모두 익숙할 것입니다.
4. 산업 분야에서는
금융 증권업에 종사한다면 최소한 한두 가지 업무에 능숙해야 합니다. 전력사업에 종사하는 사람은 최소한 전력엔지니어의 절반 이상이어야 합니다.
5. 개인 수양
자신만의 독특한 통찰력을 가지면 다른 사람의 말을 따르지 않습니다.
1. 객체 지향 분석 및 설계(OOA/OOD), 관련 패턴(GOF, J2EEDP) 및 포괄적 패턴에 능숙해야 합니다. UML, 특히 클래스, 개체, 상호 작용 및 명시된 다이어그램을 잘 이해하고 있어야 합니다.
2. JAVA 언어의 기본과 핵심 클래스 라이브러리(컬렉션, 직렬화, 스트림, 네트워킹, 멀티스레딩, 리플렉션, 이벤트, 처리, NIO, 현지화 등)를 배워야 합니다.
3. JVM, 클래스 로더, 클래스 반사 및 가비지 수집의 기본 작동 메커니즘을 이해해야 합니다. 클래스 파일을 디컴파일하고 몇 가지 기본 어셈블리 지침을 이해할 수 있어야 합니다.
4. 클라이언트 프로그램을 작성하려면 WEB 애플릿을 배워야 하고, GUI 디자인의 아이디어와 방법은 물론 데스크톱 프로그램의 SWING, AWT, SWT도 마스터해야 합니다. 또한 UI 위젯에 대한 JAVABEAN 구성 요소 패턴을 이해하고 있어야 합니다. JAVABEANS는 JSP에서도 프리젠테이션 계층에서 비즈니스 로직을 분리하는 데 사용됩니다.
5 JDBCAPI와 같은 Java 데이터베이스 기술을 배워야 하며 Hibernate, JDO, CocoBase, TopLink, InsideLiberator(국내 JDO 레드 팩토리 소프트웨어) 또는 iBatis와 같은 지속성/ORM 프레임워크를 하나 이상 사용할 수 있어야 합니다.
6 또한 개체 관계에서 임피던스 불일치의 의미, 이것이 비즈니스 개체와 관계형 데이터베이스의 상호 작용에 미치는 영향 및 운영 결과를 이해해야 합니다. 오라클, mysql, mssqlserver.
7 JAVA의 샌드박스 보안 모델(클래스 로더, 바이트코드 검증, 관리자, 정책 및 권한, 공동 서명, 디지털 서명, 암호화, 인증, Kerberos 등)과 JAAS(JavaAuthenticationandAuthorizationService)와 같은 다양한 보안/인증 API를 배워야 합니다. , JCE(JavaCryptographyExtension), JSSE(JavaSecureSocketExtension) 및 JGSS(JavaGeneralSecurityService)입니다.
8 Servlets, JSP, JSTL(StandardTagLibraries) 및 선택적 타사 TagLibraries를 배워야 합니다.
9 JSF, Struts, Tapestry, Cocoon, WebWork 등의 주류 웹 프레임워크와 MVC/MODEL2 등의 기본 모드에 대해 잘 알고 있어야 합니다.
10. tomcat, resin, Jrun 등 WEB 서버를 사용하고 관리하는 방법을 배우고, 이를 기반으로 WEB 프로그램을 확장하고 유지하는 방법을 알아야 합니다.
11. 분산 객체와 RMI, RMI/IIOP 등의 원격 API를 배워야 합니다.
12 Tuxedo, CROBA 및 javaEE 자체와 같이 널리 사용되는 다양한 미들웨어 기술 표준과 해당 구현을 Java와 결합하여 구현해야 합니다.
13 JAXP(JavaAPI for XMLProcessing), JDOM(JavaforXMLDocumentObjectModel), DOM4J 또는 JAXR(JavaAPIforXMLRegistries)과 같은 XMLAPI를 하나 이상 배워야 합니다.
14. JAVA API와 도구를 사용하여 WebService를 구축하는 방법을 배워야 합니다. 예를 들어 JAX-RPC(JavaAPI for XML/RPC), SAAJ(SOAPwithAttachmentsAPIforJava), JAXB(JavaArchitectureforXMLBinding), JAXM(JavaAPIforXMLMessaging), JAXR(JavaAPIforXMLRegistries) 또는 JWSDP(JavaWebServicesDeveloperPack)가 있습니다.
15 Spring, PicoContainer, Avalon 및 해당 IoC/DI 스타일(setter, 생성자, 인터페이스 주입)과 같은 경량 애플리케이션 프레임워크를 배워야 합니다.
16 JNDI(JavaNamingandDirectoryInterface), JMS(JavaMessageService), JTA/JTS(JavaTransactionAPI/JavaTransactionService), JMX(JavaManagementeXtensions) 및 JavaMail과 같은 다양한 J2EE 기술에 익숙해야 합니다.
17 EJB(Enterprise JavaBeans) 및 다양한 구성 요소 패턴(Stateless/StatefulSessionBeans, EntityBeans(Bean-ManagedPersistence[BMP] 또는 Container-ManagedPersistence[CMP] 및 해당 EJB-QL 포함))을 배워야 합니다. 드리븐빈즈(MDB).
18 WebLogic, JBoss 등 J2EE 애플리케이션 서버를 관리 및 구성하고 클러스터링, 연결 풀링, 분산 처리 지원과 같은 추가 서비스를 활용하는 방법을 배워야 합니다. 또한 애플리케이션을 패키징하고 구성하는 방법을 이해하고 성능을 모니터링하고 조정할 수 있어야 합니다.
19. 측면 지향 프로그래밍과 속성 지향 프로그래밍(둘 다 AOP로 혼동하기 쉬움)과 이들의 주류 JAVA 사양 및 구현에 대해 잘 알고 있어야 합니다. 예를 들어 AspectJ 및 AspectWerkz가 있습니다.
20. 서비스를 제공하려면 다양한 유용한 API와 프레임워크에 익숙해져야 합니다. 예를 들어 Log4J(로깅/추적), Quartz(스케줄링), JGroups(네트워크 그룹 통신), JCache(분산 캐싱), Lucene(전체 텍스트 검색), JakartaCommons 등이 있습니다.
21. 기존 시스템이나 로컬 플랫폼과 연결하거나 연결하려면 JNI(JavaNativeInterface) 및 JCA(JavaConnectorArchitecture)를 배워야 합니다.
22. CROBA 마스터링 등 JINI 기술 및 관련 분산 시스템에 익숙해야 합니다.
23 JavaCommunityProcess(JCP)와 Portlets(168), JOLAP(69), DataMiningAPI(73) 등과 같은 다양한 JavaSpecificationRequests(JSR)가 필요합니다.
24 sunOne, netBeans, IntelliJIDEA 또는 Eclipse와 같은 JAVAIDE에 능숙해야 합니다. (어떤 사람들은 파일 작성에 VI나 EMACS를 선호합니다. 무엇을 사용하든지 :)
25. JAVA(정확히 말하면 일부 구성)는 장황하고 수동 코딩(예: EJB)이 많이 필요하므로 코드에 대한 익숙함이 필요합니다. XDoclet과 같은 생성 도구.
26 단위 테스트 시스템(JNunit)에 익숙해야 하며 다양한 생성 및 배포 도구(Ant, Maven)를 배워야 합니다.
27. JAVA 개발에 자주 사용되는 일부 소프트웨어 엔지니어링 프로세스에 익숙해야 합니다. 예를 들어 RUP(Rational Unified Process) 및 Agile 방법이 있습니다.
28 크로스 플랫폼 소프트웨어 개발자로서 GNU/linux, sunsolaris, macOS 등 다양한 운영 체제를 운영하고 구성하는 데 대한 심층적인 이해와 숙련도가 필요합니다.
29 또한 Java 개발 속도를 따라잡아야 합니다. 예를 들어 이제 javaME는 물론 새로운 웹 리치 클라이언트 기술과 같은 다양한 새로운 Java 사양 및 기술의 응용도 배울 수 있습니다. .
30. 적어도 Java의 많은 기술은 java3D 기술과 같은 오픈 소스에 의해 직접 구동되므로 오픈 소스에 대해 알아야 합니다.
위 내용은 JAVA 전문가가 되는 유일한 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!