خانه / آموزش / سیر مطالعاتی

سیر مطالعاتی

این مستند سیر مطالعاتی پیشنهادی انجمن جاواکاپ برای علاقمندان به Java و JavaEE را ارائه می‌نماید. منابع مطالعاتی لازم برای موضوعات مختلف نیز معرفی شده‌اند.

(بروزرسانی: این مستند تا حدودی قدیمی است و فناوری‌هایی مثل GWT و JSF و vaadin و SprinMVC کم‌کم در حال از دست دادن بازار خود هستند. همچنین استانداردهایی مثل JPA و کتابخانه‌های مبتنی بر جاوااسکریپت، مثل AngulaJS در حال همه‌گیر شدن هستند. به همین دلیل، به منظور مرور فناوریهای مهم و منابع آموزشی جدیدتر، بهتر است این مستند که جدیدتر است را ملاحظه فرمایید)

نمودار سیر مطالعاتی

محتوا

در جدول زیر موضوعات و محتوای پیشنهادی گنجانده شده است. ستون «شناسه» عنوانی یکتا برای موضوعات را نشان می‌دهدکه در ادامه این مستند، در بخشهای «سیرمطالعاتی» و «آزمون جاواکاپ»، به آن ارجاع می‌شود. ستون منابع هم شماره مراجعی را نشان می‌دهد که در بخش «منابع» معرفی شده‌اند.

ردیف شناسه موضوع مطالب منابع
۱ JavaFundamentals مبانی برنامه نویسی جاوا
  • متغیر، متد، شرط، حلقه، داده‌های اولیه(Primitive Data Types)، رشته، آرایه
  • مفاهیم شئ گرایی، نحوه تعریف کلاس‌ها، سطوح دسترسی، constructor، this، static، package
  • inheritance، super، abstract، protected، polymorphism، final، interface، کلاس‌های داخلی و کلاس‌های بی نام
  • اشیاء در حافظه و مدیریت حافظه، بارگذاری اولیه و مرگ اشیاء در حافظه، زباله روب(garbage collector)
  • Exception، RuntimeException، Finally
  • متد‌ها و انواع داده عام(Generics)
  • مجموعه ها و ظرف ها List، Map، Set، (Containers) Collections، Iterator
۱,۲,۳,۴,۵,۸
۲  JavaProfessional  مباحث پیشرفته جاوا • فایل، streams، برنامه‌سازی تحت شبکه(Socket) ، Serialization، NIO، NIO.2
• Multi-thread، Synchronization و critical section
• Annotation
• Enumeration
• Reflection
• Java7 Features
• JDBC
• XML Processing
۱,۲,۳,۴,۵,۸,۱۲
۳  JavaGUI  برنامه‌سازی واسط کاربری • ساخت واسط کاربری گرافیکی
• اجزای واسط کاربر
• Event Handler
 ۱,۴,۸
۴  Test  •آزمون نرم‌افزار و آزمون واحد  ۶,۸,۱۱
۵  Refactoring • Bad Smells
• Refactoring techniques
 ۸,۱۰
۶  DesignPatterns  •الگوهای طراحی، آشنایی اولیه با نمودار UML Diagram  ۸,۹
۷  HTMLBasics • آشنایی با مبانی وب و HTTP
• HTML ، CSS، جاوااسکریپت
 ۱۸
۸ JavaEE
Fundamentals of Java Enterprise Edition
• Java Enterprise Edition
• Layers, Tiers, MVC
• Tomcat, web application structure, web.xml
• JSP, Servlets, Listeners, Filters
• Session, Request, Response
 ۶
۹ Hibernate  ۱۳,۱۴
۱۰  Spring • Dependency Injection and IoC
• Aspect Oriented Programming
• Spring Framework
• Transaction Management
 ۱۵,۱۶
۱۱  GWT  ۱۷
۱۲  SpringMVC  ۱۹
۱۳  JSF  ۲۱
۱۴  vaadin  ۲۰
۱۵  Work skills • Code Repository
• (Build Tools(Ant, Maven
 ۶

منابع

۱٫ Java How to Program (early objects) (9th Edition), Paul Deitel, Harvey Deitel
۲٫ Thinking in Java (4th Edition), Bruce Eckel
۳٫ Oracle Certified Professional Java SE 7 Programmer Exams 1Z0-804 and 1Z0-805: A Comprehensive OCPJP 7 Certification Guide, S G Ganesh, Tushar Sharma

۴٫ ترجمه کتاب مرجع اول
۵٫ برنامه نویسی به زبان جاوا، احمدرضا صدیقی
۶٫ برنامه نویسی J2EE ، احمد رضا صدیقی
۷٫ برنامه‌نویسی وب در جاوا ، احمدرضا صدیقی
۸٫ اسلایدهای جاواکاپ برای Java و JavaEE

۹٫Design Patterns: Elements of Reusable Object-Oriented Software, Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (Gang of Four)
۱۰٫ Refactoring: Improving the Design of Existing Code, Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts
۱۱٫ JUnit in Action, Second Edition, Petar Tahchiev, Felipe Leme, Vincent Massol, Gary Gregory
۱۲٫ Java SE 7 Upgrade Exam
۱۳٫ Hibernate Documentation
۱۴٫ Hibernate Tutorialspoint
۱۵٫ Spring Framework Reference Documentation
۱۶٫ Spring Framework 3.1 Tutorial
۱۷٫ GWT in Action, Adam Tacy, Robert Hanson, Jason Essington, Anna Tokke
۱۸٫ Learning Web Design: A Beginner’s Guide to HTML, CSS, JavaScript, and Web Graphics Paperback, Jennifer Niederst Robbins
۱۹٫ Web MVC framework
۲۰٫ Book of Vaadin
۲۱٫ Core JavaServer Faces (3rd Edition), David Geary, Cay S. Horstmann

آزمون جاواکاپ

آزمون JavaSE شامل دو بخش پایه و حرفه‌ای است. مفاد این آزمون در جدول زیر آمده است. جزئیات آزمون JavaEE متعاقباً اعلام خواهد شد.
آزمون بخش آزمون شناسه مفادآزمون
آزمونJavaSE بخش پایه JavaFundamentals
بخش حرفه‌ای JavaProfessional
Test
Refactoring
DesignPatterns

 

 

مطالب پیشنهادی از وب



درباره صادق علی‌اکبری

صادق، یکی از مؤسسان انجمن جاواکاپ است. وی فارغ‌التحصیل دکترای مهندسی کامپیوتر از دانشگاه صنعتی شریف است و بیش از 13 سال فعالیت در صنعت نرم‌افزار را در سابقه دارد که بخش مهمی از آن در شرکت مشاوران نرم‌افزاری اعوان بوده است. صادق هم‌اکنون عضو هیأت علمی دانشگاه شهید بهشتی است.

همچنین بررسی کنید

JSON با Jackson (بخش پنجم) استفاده در JAX-RS

در این مقاله کاربرد اصلی Jackson یعنی تولید داده‌ی متنیِ JSON و ارسال آن در …

۳۵ نظر

  1. یکی که میخواد جاوا کار باشه همه این منابع رو باید بخونه تا بتونه توی بازار کاری انجام بده؟

     
    • سؤال بسیار خوبی است. نه اصلاً برای وارد شدن به بازار کار، خواندن همه این منابع لازم نیست. بسیاری از این منابع، همپوشانی دارند. مثلاً پنج منبع اول، همگی مراجع معروف آموزش جاوا هستند و خواندن یکی از آنها برای آشنایی اولیه با زبان جاوا کاملاً کافی است. بهتر است در هر موضوع، حداقل یک منبع را انتخاب کنید.
      برای ورود به بازار کار در زمینه جاوا، ردیف ۱ قطعاً لازم است، ردیفهای ۲،۴ و ۶ مهم هستند و سایر موارد، بسته به محل کار مهم می‌شود. مواردی وجود داشته که با داشتن گواهینامه جاوا پیشرفته انجمن جاواکاپ، که فقط موارد ۱و۲و۴و۵و۶ را شامل می‌شود، مشغول به کار شده‌اند.

       
  2. با سلام خدمت شما
    من به طراحی وب علاقه دارم.اما نمیدونم جاوا به دردم میخوره یا نه؟
    از ۲ تا استاد دانشگاهم پرسیدم بهم جاوا رو معرفی کردند ولی نگفتم برای طراحی وب میخوام.
    زمینه برنامه نویسی جاوا چیه؟

     
    • طراحی وب حوزه وسیعی است. برنامه نویسی سمت سرور (Server side)، طراحی واسط کاربر (UX) و غیره. شما باید مشخص کنید به چه بخشی علاقه دارید. جاوا برای برنامه‌های متوسط و بزرگ سمت سرور گزینه مناسبی است.

       
  3. من تقریبا java fundamentelsرو بلدم و میخوام برا مسابقه بعدی جوا کاپ خودمو آماده کنم شما از بین منابعی که معرفی کردیندیگه کدوم یکیش رو مهم تر میدونین و توصیه میکنین؟
    خواهش دیگرم این بود که زود به زود توساییتتون سوالات برنامه نویسی بزارین سوالاتی که میدونین کار کردن رو اونا خیلی اموزنده هست.ممنون.

     
    • اگر میخواهید یک منبع معرفی کنیم، پیشنهاد میکنیم یکی از سه منبع اول را انتخاب کنید. هر سه کتاب خوب هستند و البته هر کدام هم نقاط ضعف و قوت خاص خود را دارند. مثلاً کتاب دوم عمق بیشتری دارد ولی قدیمی تر از دو اتی دیگر است. اگر کتاب دایتل (منبع اول) را انتخاب کردید، برای مباحث Reflection و Generics به سراغ منبع دوم بروید.

       
  4. سلام برای ردیف ۸ و ۱۵ مخصوصاً مورد ۸ کتاب انگلیسی معرفی می کنید!

     
  5. سلام ، من دانشچوی رشته هوش مصنوعی هستم، سوالی که دارم اینه که برای شبیه سازی ها و مدلینگ های مختلف با روش های مختلف ( شبکه عصبی، فازی و …) از جاوا میشه کمک گرفت؟ البته نه فقط در محیط دانشگاه، چون برای کارهای دانشگاه از متلب استفاده می کنیم. ولی متلب خروجی اگزه نداره. بعدا برای بازار کار.
    با تشکر

     
    • بله میشه از جاوا برای کارهای هوش مصنوعی استفاده کرد. بسیاری از کتابخانه‌ها و امکانات هوش مصنوعی در زبان جاوا پیاده شده اند. حتی امکانات جدیدی به صورت متن‌باز منتشر شده‌اند که الگوریتم‌های هوش مصنوعی را به صورت کارا و سریع و توزیع شده اجرا می‌کنند. در این مورد اخیر، اینجا را ببینید:
      http://mahout.apache.org/

       
  6. سلام
    من سوال واسم پیش اومده

    چرا تو لیست منابعی که ذکر کردید هیچ اشاره ای به کتاب
    Effective Java
    نکردید؟ یعنی این کتاب رو جزو منابع خوب برای داشتن یه دید عمیق تو جاوا به حساب نمیارید؟

     
  7. نظر شما راجب فیلم های آموزشی چیه ؟ اینکه اول فیلم نگاه کنیم بعد بیایم کتاب بخونیم ( مخصوصا توی java ee) بهتر نیست ؟ اگه فیلم های خاصی هم مد نظر دارید معرفی کنید . سپاس

     
  8. سلام.
    دو کتاب java a beginners guide و java the complete reference رو جزء منابع معرفی نکردید. این دو کتاب رو خود اوراکل منتشر کرده و توی منابع توی سایتش گذاشته. یعنی شما اینارو جزو منابع نمی دونید؟

     
  9. با سلام، یک سوال داشتم، آیا کتاب های آقای صدیقی برای مطالعه خیلی قدیمی نیستند؟ ضمن اینکه برای شروع java ee باید از کجا شروع کنم؟ آیا می توانم مستقیما به سراغ spring بروم یا باید اول به مباحث java ee مسلط باشم و سپس کار بر روی فریم ورک spring را شروع کنم؟ بسیار ممنون از راهنمایی شما

     
    • سلام. متأسفانه همین طوره و کتابهای آقای صدیقی اندکی قدیمی شده اند. برای شروع JavaEE بهتره از استانداردهای JavaEE به خصوص JSP و Servlet شروع کنید و سپس سراغ Spring بروید. هرچند از Spring بدون JavaEE هم میتوانید استفاده کنید.

       
  10. ایا ازمون های جاوا دیگر برگزار نمیشوند ؟

     
  11. سلام
    دیگه آزمون های جاوا برگزار نمیشه؟ لطفا توضیح بدید

     
  12. سلام. ببخشید الان ردیف ۸ که پایه جاوا سازمانی هست مگه نباید کتاب وب در جاوا اقای صدیقی رو میذاشتید؟
    کتاب j2ee صدیقی به sparing,hibernate…پرداخته.

     
  13. سلام
    دیگه آزمون های جاوا برگزار نمیشه؟ لطفا توضیح بدید

     
  14. با سلام خدمت استاد گرامی
    من با مفاهیم شی گرایی در جاوا آشنایی خوبی دارم و پس از تماشای ویدءو های آموزشی شما از این موضوع خیالم راحت شد.
    حالا میخواستم نسخه سازمانی جاوا رو آغاز کنم.
    با توجه به قدیمی بودن کتاب آقای صدیقی کمی از این بابت نگرانم.
    از دوستانم که در این موارد تجربه داشتند مشورت خواستم ایشون برای شروع مطاله در مورد JSF رو پیشنهاد کردند.
    میخواستم اگر امکانش هس نظرتان رو در مورد این موضوع بیان کنید.(آیا JSF برای شروع نقطه آغاز خوبی است؟)

    اگر خوب است چه کتابی را معرفی میکنید؟

    Core JavaServer Faces (3rd Edition) 3rd Edition
    این نام کتابی است که دوسم معرفی کرد.

    با تشکر

     
    • صادق علی‌اکبری

      سلام. هر چند JSF یکی از استانداردهای مهم و متأخر جاوا برای ساخت برنامه‌‌های وب است، اما استقبال از این استاندارد در صنعت کم بوده و به مرور کمتر هم شده است ( نه فقط در ایران). به نظر من بهتر است با مبانی JavaEE آشنا شوید و سپس سراغ JPA یا Hibernate بروید و سپس Spring را مطالعه فرمایید. برای محتوای آموزشی در این زمینه‌ها، سایتهایی مثل tutorialpoints یا javatopints را ببینید.

       
  15. سلام من میخوام اندروید یاد بگیرم.باید جاوا رو تا کجا یاد بگیرم؟

     
    • با سلام
      java se
      البته بستگی به این داره که میخاین کارتون تا چ حد با کیفیت باشه.
      اما با داشتن شناخت نسبت به شی گرایی با خیال راحت میتونین اندرویدو شروع کنید و در کنار خوندن مطالب اندروید مطالب پیشرفته تر جاوا رو هم به طور موازی پیش ببرید.
      ۱۳ قسمت اول آموزش جاوا کاپ رو ببینید اگر مطالب آموزشی رو کامل یاد گرفتید میتونین اندروید رو شروع کنید.

      البت این نظره منه وگرنه خیلی از آموزشگاه ها میگن اصن نیازی به جاوا نیست که به نظر من این آموزشگاه فقد به فکر درآمد بیشتر هستند.
      موفق باشید !

      برای اندروید کتاب head first بسیار کتاب خوبیه
      کتاب the big nerd ranch guide هم کتاب خوبیه

       
  16. با سلام
    پیشنهاد من برای دوستانی که میخواهند جاوا وب رو یاد بگیرند فیلم های آموزشی استاد رامتین خسروی هست.
    برای شروع فوق العادس.
    البته هیچ مطلبی به طور کامل روش بحث نمیشه ولی یک دید بهتر نسبت به جاوا وب میده.

    و اما یک سوال
    برای object-oriented analysis and design
    چه منبعی رو پیشنهاد میکنید ؟
    اصلا لازمه در این مورد جداگانه مطالعه بشه ؟ یا به مرور زمان و با کار خود به خود مهارت به دست میاریم؟

     
    • سید جمال الدین

      سوالتون در مورد object-oriented analysis and design بسیار هوشمندانه است. خیلی از برنامه نویسان به یادگیری این مباحث توجهی ندارند و بعد از یادگیری زبان و فناوریهای شروع به تولید می کنند که خروجی خوبی ندارد. پیشنهاد می کنم مفاهیم الگوهای طراحی (Design Pattern) و Domain Driven Design یا DDD رو دنبال کنید تا به منابع مناسب دسترسی پیدا کنید.
      برای الگوهای طراحی منبع فارسی خوبی رو به خاظر نمی اورم. در مورد DDD مقالات آموزشی سایت مهندس هادی احمدی به آدرس زیر نقطه شروع خوبی است.
      http://hadiahmadi.ir

       
  17. سلام بنا به دلایلی هم نیاز و هم علاقه به یادگیری برنامه نویسی برای اندروید دارم و جاوا رو انتخاب کردم

    با اصول برنامه نویسی اشنا هستم

    یک کتاب که از صفر و پایه بدون پیچیده کردن موضوع آموزش داده باشه میخوام و به روز باشه ( ترجیها نویسنده ایرانی نداشته باشه چون بنا به تجربه توی یادگیری vb و همچنین اندکی c تمام کتاب های فارسی یک مشت منبع کهنه با ادبیات به شدت سخت بودن تا جایی که به این نتیجه رسیدم انگار نویسنده های ما هر قصدی جز آموزش دارن ! )

    ترجیها ترجمه اون موجود باشه ولی اگر واقعا منبع فارسی خوب نداریم انگلیسی هم مشکلی نیست

     
  18. سلام. کارتون واقعا عالیه. لطفا به روز نگهش دارین. خیلی ممنون

     
  19. سلام
    من به برنامه نویسی علاقه دارم و میخواستم یه زبان رو شروع به یادگیری کنم که با پیشنهاد بقیه جاوا رو انتخاب کردم.
    البته برنامه نویسیم با متلب خوبه، یعنی پیش زمینه برنامه نویسی دارم.
    حالال میشه یه مسیر برای یادگیری جاوا بهم پیشنهاد بدید.
    با تشکر

     

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *