في حيره من امري بين الاثنين
ان اتجه الى مجال تطوير الويب
او تطوير تطبيقات الموبايل
يشدني الاثنان ولكن اريد الخوض فقط في واحد منهما
فأيهما تنصحون ولماذا؟
كلاهما في ازدهار ..
ابدأ باحدهما ثم انتقل الى الاخر .. لتصبح ملماً بكلا المجالين.
اذا بدأت بمجال الويب, سيساعدك كثيراً بحيث يمكنك عمل تطبيقات الموبايل باستخدام لغات الويب مثل html/css/js ..عن طريق اطر عمل عديدة مثل phongap
أخي أنا مصمم ويب و أجيد كل اللغات التي ذكرتها
لذا هل يمكنني انشاء تطبيقات أندرويد عبرها ؟ بدون تعلم الجافا ؟
نعم، يمكنك ذلك، وأنصحك بالمنصة ionicframwork اذا كنت مهتما بـ angularJS
هذا موضوعي حول تجربتي بالتطوير بالمنصة ionic
هل بناء تطبيقات بواسطة html/css/js يسمح ببناء تطبيقات بنفس الجودة أو قريبة من جودة الغات المخصصة للهواتف الذكية ؟
يعني هنا نفهم أن إمكانيات لغات الويب في بناء تطبيقات موبايل محددة و تقتصر ربما فقط في بناء تطبيق لموقعك الشخصي و لا تتعدى لحدود لبرمجة لعبة !!
شكرا جزيلا لك
لكن أود الاستفسار عن شيء : هل تعلم أكثر من لغة برمجية مثلا من php تنتقل لل objective -c ثم java ...الخ هل يؤثر على تخصصك و تضعف مهاراتك في لغة معينة ؟
تعدد اللغات لا يؤثر على جودة المنتجات التي ينتجها المبرمج من تطبيقات وبرامج عند وجود الخبرة البرمجية الكافية، بل على العكس، تعلم لغة جديدة يفتح المجال للمبرمج الخبير للتفكير بطرق أخرى، ومعرفة تقنيات جديدة غير متاحة باللغات التي يعرفها مسبقاً.
ومع ذلك، التخصص في لغة واحدة مع معرفة لغات أخرى يصنع مبرمج أقوى ..
وأيضاً على الهامش، اللغة وسيلة وليست غاية، وهكذا، لِمَ تتعلم لغة جديدة وتنتقل من واحدة إلى أخرى فقط لغايات التعلّم؟! - الأفضل، معرفة الغاية من تعلم اللغة -مثلاً بناء تطبيقات iOS- ومن ثم تحديد اللغة التي تطلبها هذه الغاية .. واللغات المتاحة في هذه الحالة هي: Obj-C أو Swift ..
ونصيحة: لا تنتقل من لغة إلى أخرى إلا إذا أنجزت مشاريع حقيقية في اللغة التي تعرفها الآن .. لأن اللغات البرمجية بحر واسع، لو بقيت طيلة حياتك تنتقل من لغة إلى اخرى من غير إنجازات حقيقة على أرض الواقع، فلن تنفعك بشيء ..
على أيّة حال، اللغة البرمجة لن تكون مسألة ذات أهمية عند بناء تطبيقات حقيقة وكبيرة .. فمعرفة مبادئ البرمجة، وكيفية بناء تطبيقات متينة وواسعة Maintainable and Scalable .. هي المشكلة .. وليست اللغة ..
سبق ورأيت لعبة مبرمجة بتقنيات الويب للموبايل, لكن حقيقة اذا كان توجهك العاب فهناك امور افضل مثل unity3d او libgdx الخ ..
وتعلم لغات برمجية عديدة لا يؤثر على التخصص ابداً بل بلعكس يزيد من معارفك, لكن لا انصح بتعلم اكثر من لغة لاجل التعلم فقط, مثلاً تعلم php لتطوير مواقع الويب, ثم اذا احتجت تطبيق اندرويد يرتبط بموقع مثلاً فتعلم لغة جافا, اذا اردت عمل نسخى للايفون تعلم objective -c او swift الخ ..
ايضاً اذا حصلت على عمل بلغة برمج معينة فتتعلمها وهكذا ..
هذا رايي المتواضع بنائاً على تجربتي فقط.
إبدأ بالوب و أنصحك بال MEAN Stack أى MongoDB, ExpressJs, AngularJS, NodeJS و الهدف هنا هو صقل معرفتك للغة واحدة فقط وهي الجافاسكربت و من ثم يمكنك إستخدام ionicFrameWork كما نصحك الأخ عبد الرحمن موساوي ، فعن طريقه سوف تتمكن من تطوير تطبيقات هجينة تعمل على أكثر من منصة كالأندرويد و الIOS إن شاء الله . بالتوفيق.
التعليقات