فرق برنامه نویسی جاوا برای اندروید با خود جاوا
فرق برنامه نویسی جاوا برای اندروید با خود جاوا در چیه چون سرفصل های آموزشی یه کلاس آموزش جاوا رو دیدم که به کل با این جاوا فرق میکرد
- IntelliJ
- Java Core 1.8
- Object Oriented Design Pattern
- کلاس های پر کاربرد JavaSE همانند ArrayList، HashMap و…
- مفاهیم File، Serialize، Thread و…
- مفاهیم اولیه بانک اطلاعاتی اوراکل و زبان SQL
- ارتباط با بانک های اطلاعاتی از طریق JDBC
- مفاهیم Transaction
- جلوگیری از SQL Injection
- توزیع برنامه کاربردی در سطح شبکه بواسطه Remote Method Invocation
- آشنایی با معماری Model View Controller
- ایجاد واسط کاربری برای سیستم عامل لینوکس، ویندوز از طریق Swing و AWT
- ایجاد برنامه های کاربردی تحت وب بوسیله Applet
- انتقال و دریافت اطلاعات از اینترنت بواسطه Web Socket
- Apache Tomcat Application Server
- تولید سرویس Rest
- لاگ گیری بواسطه Log4j
- توسعه در زمان اجرا بوسیله Reflect Oriented Programming
- توسعه در زمان اجرا بوسیله زبان Groovy
- ارتباط و تولید فایل های Office
- تجزیه XML
- نقل و انتفال اطلاعات بر مبنای JSON
- روش های رمز نگاری برگشت پذیر و برگشت ناپذیر AES، MD5، SHA، RSA
- گزارشگیری بواسطه Jasper Report
- بسته بندی پروژه بوسیله Apache Ant
- آشنایی با روش های مهندسی نرم افزار Agile و RUP
- آشنایی با UML
- Apache Tom Enterprise Edition Application Server
- پیاده سازی پروژه با استفاده از Java Server Faces
- استفاده از Primeface در Java Server Faces
- ارتباط با بانک اطلاعاتی بواسطه ویرایش جدید iBatis یا همان MyBatis
- رفع وابستگی بواسطه CDI
- مفاهیم و پیاده سازی پروژه منطبق بر EJB3.0 و Open EJB
- پیاده سازی Web Service با استفاده از Apache Axis2.0
- ارسال و دریافت پیغام از طریق Java Message Service و Apache Active MQ
- ارتباط با Data Base از طریق JPA و JTA
- مدیریت فرایندهای انسانی و ماشینی از طریق JBOSS JBPM
- برنامه نویسی منطبق بر Model View Presentation
- پیاده سازی پروژه بر مبنای Google Web Toolkit
- پیاده سازی پروژه بر مبنای Vaadin
- مدیریت پرتال لایفری
- برنامه نویسی پرتال (ایجاد پرتلت با استفاده از JSR168)
- مانیتورینگ بواسطه Java Visual VM
- JBoss Application Server
- Weblogic Application Server
- Java Mail
- بررسی معماری پروژه
- برنامه نویسی وب در سمت کاربر شامل HTML، JavaScript، CSS و برنامه نویسی Ajax
- ایجاد Procedure و Function در بانک اطلاعاتی و فراخوانی آن
- Apache Tomcat Application Server
- Java Server Page
- Servlet، Listener، Filter
- Tag Library
- JNDI و مدیریت DataBase Connections
- JSTL
- Model View Controller Architecture
- گزارش گیری تحت وب
- Dynamic Report
- برنامه نویسی آژاکس بواسطه Direct Web Remote
- برنامه های توزیع شده J2EE
- مفاهیم Deploy
- ارتباط با بانک اطلاعاتی با دیدگاه ORM
- Hibernate ORM Framework
- تلفیق JPA و Hibernate
- Spring Framework
- رفع وابستگی به واسطه Spring IOC
- برنامه نویسی Aspect بواسطه Spring AOP
- تلفیق Spring و Hibernate بواسطه Spring Transaction
- پیاده سازی پروژه منطبق بر MVC با استفاده از Spring MVC
- تلفیق Spring MVC و Spring Transaction بوسیله Annotations
- پیاده سازی پروژه منطبق بر MVC با استفاده از Struts1.0 و Struts2.0
- J2EE Security
- مقابه با Session Hijacking
- مفاهیم امنیت اطلاعات و تبادل امن
- اعتبار سنجی بوسیله Oval
تفاوت باعث ارتقاء بشریت شده در دنیای برنامه نویسی همه چیز متفاوت است
خب من سرفصل هایی که نوشتید رو براتون یکم روشن تر میکنم :
- IntelliJ : محیط توسعه ، بسته به نوع کاربری میتونه متفاوت بشه مثلا برای اندروید Eclipse پیشنهاد شده.
- Java Core 1.8 : هسته Java که JDK 1.8 معرفی شده توی این آموزش :)
- Object Oriented Design Pattern : شی گرایی و استفاده از دیزاین پترن ها که در اندروید هم استفاده شده .
- کلاس های پر کاربرد JavaSE همانند ArrayList، HashMap و… : کلاس های اشاره شده که در اندروید هم استفاده کردیم.
- مفاهیم File، Serialize، Thread و… : ترد ، کار با فایل ، سریالایز کردن که در اندروید هم مورد استفاده قرار گرفتند.
- مفاهیم اولیه بانک اطلاعاتی اوراکل و زبان SQL : کار با SQL که توضیح داده شده ، اوراکل هم نوع دیگری از دیتابیس ها هست که همونطور که مشخص توسط شرکت اوراکل ساخته شده و برای جاوا استفاده میشه .
- ارتباط با بانک های اطلاعاتی از طریق JDBC : این 4 حرف هم مخفف Java database connectivity technology هست که یک API برای اتصال به دیتابیس در جاوا هست ، ربطی به اندروید نداره .
- مفاهیم Transaction : مربوط به انتقالات پایگاه داده هست .
- جلوگیری از SQL Injection : جلوگیری از اینجکشن در SQL که در اندروید کاربردی نداره و برای وب سرویس و یا دیتابیس های بزرگ استفاده میشه .
- آشنایی با معماری Model View Controller : اینم یک ساختار برنامه نویسی هست که در اندروید خیلی استفاده نمیشه و بیشتر سمت وب سرویس کاربرد داره .
- ایجاد واسط کاربری برای سیستم عامل لینوکس، ویندوز از طریق Swing و AWT : سوینگ هم یک لایبری برای کار با UI برای دسکتاپ هست و به اندروید ربطی نداره ، مثلا در اندروید ما از UI خاص خودش استفاده میکنیم .
- ایجاد برنامه های کاربردی تحت وب بوسیله Applet : اینم که مشخص هست مریوط به وب اپلیکیشن ها هست .
من همین موارد رو اشاره کردم تا برآوردی داشته باشیم بقیه رو هم میتونید خودتون با جستجو به نتیجه برسید .
همه این هایی که شما ذکر کردید + همه چیز هایی که در اندروید هست همه زیر مجموعه زبان برنامه نویسی جاوا هستند .
ما در جاوا روی 4 پلتفورم کار میکنیم : Java Card , Java ME, Java SE, Java EE
سر فصل هایی که شما نوشتید ، برخی به Java SE اشاره داره ، برخی هم به Java EE و این گستردگی جاوا به خاطر وجود پلتفورم های مختلفش هست .
نتیجه گیری این هست که یکسری اطلاعات هست که مثل شی گرایی یا دیزاین پترن ها در همه نوع زبان شی گرایی وجود دارند و استفاده میشن و فرقی در نوع پلتفورم شما ندارن .
ولی بعضی چیز ها هستن که در پلتفورم ها معنی پیدا میکنن ، مثلا سنسور ها در اندروید معنی دارند یا MVC در وب سرویس معنی پیدا میکنه هرچند که در کلاینت هم میتونه باشه .
ولی تو همه این ها شی گرایی یک معنی رو میده ، دیزاین پترن یک معنی داره ، ترد ، فایل ، سریالایز و خیلی چیزای دیگه همه به یک معنی در پلتفورم های مختلف استفاده میشن .
پس اگر شما اندروید یاد بگیرید با پایه جاوا آشنا میشید ولی اگر میخواید با جاوا وب سرویس اجرا کنید نیاز دارید تا به Java EE مسلط بشید .
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .