أصبح مطورو Android إلهًا في عام 2020! تعلم هذه المهارات الأساسية

كخبير تقني في Android ، هناك ما لا يقل عن 2 إلى 3 مجالات مهنية.

غالبًا ما يسألني العديد من مطوري Android ، ما الذي أحتاج إلى تعلمه لأصبح مهندس Android جيدًا؟ بالنسبة لهذه المشكلة ، تختلف أوصافهم إلى حد ما إلى حد ما ، ولكن بشكل عام ، نحتاج جميعًا إلى تعلم سلسلة من المهارات لتصبح مهندس Android ممتاز.

في رأيي ، مثل هذا الارتباك أمر طبيعي. يعد Android نظامًا بيئيًا ضخمًا وديناميكيًا. قد تحتاج إلى قضاء عدة أسابيع لفهم وتعلم بعض أدواته ومفاهيمه ذات الصلة ، ولكن في النهاية ستجد أن العديد منها ليس مهمًا جدًا أو ليس مفيدًا جدًا. لذلك ، في هذه المقالة ، سأشارك المهارات المهمة التي استخدمتها في تطوير Android ، آملاً أن أساعدك ونسمح لك بتركيز طاقتك على الأشياء المهمة.

بالطبع ، إذا كنت مطورًا ذا خبرة في Android ، فقد تعرف كل هذه المعرفة. هناك العديد من المهارات والأفكار التي تتطلب الكثير من المعرفة الأساسية. عندما لا يكون لديك الخبرة الكافية ، من الصعب رؤية نقاط المهارة هذه. في هذه المقالة ، لا يمكنني سرد المهارات التي يحتاجها جميع مطوري Android. لذلك ، جمعت تقريبًا نقاط المعرفة هذه وفقًا لتجارب مختلفة. يرجى ملاحظة أن هذه مجرد مجموعة تقريبية وليست بالضرورة دقيقة للغاية.

اكتب في المقدمة

إذا كنت مجرد شخص يريد أن يكون مطورًا لنظام Android ولم تكتب أي تطبيقات حتى الآن ، فإن هذا المقال لا يزال مبكرًا جدًا بالنسبة لك. تهدف هذه المقالة بشكل أساسي إلى مساعدة المطورين على أن يصبحوا شخصًا أكثر احترافًا.

في هذه المقالة ، سأقدم لك الكثير من الاقتراحات ، لن تسمح لك بالذهاب خالي الوفاض. تسرد المقالة كيفية أن تصبح مطورًا محترفًا في وقت قصير. بعد قراءة المقال ، تحتاج إلى التدرب عليه بنفسك ، وغالبًا ما تعود لرؤية هذه المهارات.

قبل بداية هذه المقالة ، سأفترض أنك قمت بنشر تطبيقات Android على Google Play واستخدام GitHub لإدارة شفرة المصدر.

0-2 سنوات من الخبرة التنموية

يعد Android إطارًا معقدًا للغاية مع منحنى تعليمي حاد. هناك بعض المفاهيم المعقدة التي يحتاج مطورو Android الأصلي إلى تعلمها ، ولكن الجزء الآخر يرجع إلى Android ، مما يسبب تعقيده.

عند دخولك إلى المهنة ، بالإضافة إلى أعمال تطوير البرمجيات الخاصة بك ، يجب أن تتعلم إطار عمل Android ، وتنسى اللغة ، والهندسة المعمارية ، والمكتبات الشعبية المفتوحة المصدر ، والتركيز على المفاهيم الأساسية ، وإجراء بحث متعمق.

على وجه التحديد ، أقترح عليك معرفة المزيد حول ما يلي:

  • إدارة ذاكرة Android وعملية الجدولة

عند مواجهة "Low Memory Killer" ، كيف تتأكد من أن تطبيقك يعمل بثبات وموثوقية؟ هذه مسألة معقدة للغاية. قصة قصيرة طويلة ، عندما ينتقل المستخدم إلى تطبيق آخر ، سيتم تعطيل دورة حياة التطبيق الخاص بك ، ولكن عندما يعود المستخدم مرة أخرى بعد فترة ، يأمل المستخدم أن يتم تشغيل التطبيق الخاص بك كما لو لم يحدث شيء .

في هذه المقالة ، لن أعرض أي تفاصيل عن إدارة الذاكرة ، إذا كنت تريد فهمها ، يمكنك إلقاء نظرة على هذه المقالة.

  • دورة الحياة

إذا طلب مني أحد الأشخاص تسمية المصدر الرئيسي للتعقيد والأخطاء في تطبيق Android ، فسأخبره على الفور أنها "دورة حياة" (ثم أغطي وجهي وأبكي).

المكونات الأساسية للتطبيق والنشاط والجزء والخدمة والبث الإذاعي و ContentProvider وبعض أطر عمل Android لها دورات حياة معقدة ، ودورات حياتها ليست هي نفسها. إذا كنت تعتقد أن هذا ليس كافيًا ، فقد أطلقت Google أيضًا مكتبات وأطر عمل جديدة ، فهذه المكتبات لها تعقيدها ودورة حياتها المستقلة. تم إطلاق برنامج Loader و ViewModel و LiveData لحل هذه المشكلات.

هناك شيء مثير للاهتمام ، لم أر قط أي تعريف "لدورة الحياة". لقد تم استخدامه ، ولكن ماذا يعني ذلك؟ على حد علمي ، إلى حد ما ، تقوم فقط بربط بعض العقد معًا لإنشاء رسم بياني لدورة الحياة. لقد فكرت كثيرًا في دورة الحياة ، وسأحاول هنا تحديدها.

دورة حياة المكون هي آلة حالة مجردة. الملخص هنا يعني أن حالة آلات الحالة هذه محددة مسبقًا ، كما يتم تحديد شروط الانتقال بينها. لكن هذه التعريفات غير مكتملة. تحتاج إلى تنفيذ الأجزاء المفقودة حتى تعمل بشكل صحيح. هذه الأجزاء المفقودة هي مجموعة فرعية من طرق المكونات هذه ، والتي نسميها "عمليات الاسترجاع لدورة الحياة". بالإضافة إلى جهاز الحالة نفسه ، هناك العديد من القيود والقيود الضمنية في عمليات الاسترجاع لدورة الحياة هذه. بعض هذه القيود مكتوبة في الوثيقة ، بينما البعض الآخر غير موثق.

ما مدى تعقيد دورة الحياة؟ دعنا نلقي نظرة على هذه الصورة أولاً (فهي غير مكتملة بعض الشيء وقديمة بعض الشيء). تبدو هذه الصورة مخيفة بعض الشيء. ومع ذلك ، لا داعي للذعر ، لا يستطيع معظم مطوري Andorid معرفة هذه الصورة. في الواقع ، حتى مطوري Android في Google لا يفهمون مشكلات دورة الحياة. عندما أصدرت Google مكون Lifecycle ، قدمت بعض الأخطاء حول Fragment ، والتي لا يمكن إصلاحها حتى تم إصدار الإصدار الجديد اللاحق.

على الرغم من أنك لست بحاجة إلى فهم دورة حياة Android بالكامل الآن ، يجب أن تعرف بعض التفاصيل المهمة. خلاف ذلك ، ستصبح التعليمات البرمجية الخاصة بك فوضوي وعرضة لسلسلة من المشاكل الصعبة.

عندما تتقن أساسيات دورة الحياة ، يمكنك إلقاء نظرة على عشرة خطايا مميتة لتطوير Android التي كتبها غابور فارادي. تسرد هذه المقالة الأخطاء التي يرتكبها معظم المطورين. ترتبط معظم هذه الأخطاء بدورة الحياة.

بالمناسبة ، في المقابلات ، يتم دائمًا طرح الأسئلة المتعلقة بدورة الحياة. لهذا السبب يجب عليك دراسة دورة الحياة.

  • سياق الكلام

في كل تطبيق Android ، يوجد كائن سياق واحد أو أكثر.

من الصعب شرح مثل دورة الحياة. إنها مثل "صف الله" ، لديها الكثير من القدرات. من الصعب علينا أن نصفها بوضوح في جملة أو جملتين. ومع ذلك ، من المهم فهم مسؤوليات السياق والفرق بين السياقات المختلفة.

في هذا المقال ، لا يوجد شيء آخر حول السياق. أقترح عليك قراءة الإجابة حول "ما هو" السياق "على Android؟" في StackOverflow ومحتوى هذه الإجابة.

  • موضوع واجهة المستخدم

يحتوي كل تطبيق Android على سلسلة محادثات خاصة بواجهة المستخدم. يرسم هذا الخيط صفحة واجهة المستخدم على الشاشة. إذا قمت بتحميل سلسلة محادثات واجهة المستخدم بشكل زائد ، سيصبح تطبيقك عالقًا وغير مستجيب. في الحالات القصوى ، يمكن أن تتسبب الأخطاء في سلسلة رسائل واجهة المستخدم في حدوث أخطاء في التطبيق بأكمله (على الأقل يبدو أن هناك خطأ ما).

إذا كنت ترغب في معرفة المزيد عن الآلية وراء سلسلة المحادثات ، يمكنك الانتقال إلى هذا الفيديو ، الذي يشرح سلسلة المحادثات المتعددة في Android بالتفصيل ، بما في ذلك التفاصيل ذات الصلة بسلسلة محادثات واجهة المستخدم والمشكلات المحتملة.

  • انقسام منطقي

بشكل عام ، كود إطار Android ليس "مرتبًا". يحتوي على الكثير من فئات الله ، كل منها يحتوي على الآلاف من أسطر التعليمات البرمجية ، ويجب علينا أيضًا توسيع هذه الفئات حتى يتم تشغيل التطبيق لدينا. في معظم الحالات ، سواء كان التطبيق أو النشاط أو الأجزاء أو الخدمة ، فنحن في فصل دراسي كبير ونفعل الكثير من الأشياء.

على الرغم من أن هذه ممارسة شائعة في تطوير Andorid ، إلا أنها لا تساعد على الحفاظ على منطق الشفرة لدينا لفترة طويلة. لذلك ، أقترح عليك الانتباه إلى هذه المشكلة قدر الإمكان ، وإيجاد المزيد من الفرص لإعادة صياغة الرمز ، وتقسيم المنطق إلى فئات منفصلة.

لنكون صادقين ، لا أعتقد أن المطور الصغير يمكنه إجراء الكثير من التحسينات على الهندسة والتصميم. يتطلب تغليف منطق الشفرة واستخراج فئات ذات معنى بشكل صحيح بعض الخبرة في التطوير. بالطبع ، لا أريدك أن تفكر في تقسيم التعليمات البرمجية. يمكنك أن تفعل ما يمكنك لتجنب المواقف التي لا يمكن السيطرة عليها (على سبيل المثال ، أكثر من 5000 سطر من التعليمات البرمجية مكتوبة في نشاط).

في البداية ، يمكنك محاولة تقسيم المنطق المرتبط بالسياق الموصوف في هذه المقالة.

2-4 سنوات خبرة في التنمية

عندما تعمل في حياتك المهنية لعدة سنوات ، تصبح مطورًا ذا خبرة في Android. من خلال البحث والتعلم ، يمكنك بسهولة تحقيق بعض الوظائف غير المهنية. ماذا ستفعل لاحقا؟

أعتقد أنه في هذا الوقت ، أنت بالفعل على دراية بأساسيات إطار عمل Android ، ويمكنك محاولة تعلم مهارات المستوى الأعلى. لا تقتصر هذه المهارات على Android ، فهي بعض مهارات تطوير البرامج العامة. على وجه التحديد ، يمكنك دراسة الموضوعات التالية:

  • حقن التبعية

حقن التبعية هو نمط تصميم يركز على الفصل الهيكلي. يتم استخدامه بشكل رئيسي لفصل وظيفتي التطبيق: الرابط بين التطبيق والوظيفة الأساسية ، وإدراك مكون الوظيفة الأساسية.

في بعض النواحي ، فإن قاعدة التعليمات البرمجية التي تنفذ حقن التبعية تشبه الكمبيوتر تمامًا: المكتبة الأساسية لحقن التبعية تشبه اللوحة الأم ، في حين أن المكونات الوظيفية الأخرى مثل وحدة المعالجة المركزية والذاكرة والأجهزة الطرفية وما إلى ذلك. طالما أنك تقوم بتنفيذ حقن التبعية في التعليمات البرمجية الخاصة بك ، يمكنك بسهولة إدراج وظائف جديدة ، ويمكنك بسهولة إعادة استخدام وظائف المكونات الأخرى ، ويمكنك أيضًا استخدام وظائف المكونات الجديدة بسهولة. على الرغم من أن هذا التشبيه مبالغ فيه بعض الشيء ، يبدو لي أنه يعكس حقًا الفكرة الكامنة وراء حقن التبعية.

لسوء الحظ ، يساء فهم العديد من المقالات حول حقن التبعية ، مما تسبب في الكثير من التدخل للمبتدئين. لذلك ، إذا كنت ترغب في تعلم حقن التبعية ، أقترح عليك قراءة هذه المقالة. في هذه المقالة ، قمت بتحليل العديد من "أساطير" حقن التبعية.

  • فصل واجهة المستخدم

نظرًا لبنية إطار عمل Android نفسه ، فقد دفعنا إلى إقران صفحة المستخدم بمنطق آخر في التطبيق أثناء عملية التطوير. هذا صحيح بالنسبة لجميع المبتدئين في Android تقريبًا. سيقودنا هذا الاقتران إلى كتابة فئة كبيرة تحتوي على رسم واجهة المستخدم للتطبيق ومعالجة الشبكة والترابط المتعدد ومنطق عمل التطبيق وما إلى ذلك.

في تجربتي ، فإن اقتران منطق واجهة المستخدم والمنطق الآخر سيجعل قابلية الحفاظ على الشفرة أسوأ وأسوأ. عاجلاً أم آجلاً ، سيصبح من الصعب فهم الشفرة وقراءتها. في النهاية ، قد يسبب الكثير من الآثار الجانبية بسبب تغيير طفيف في الوظيفة.

لفصل منطق واجهة المستخدم عن المنطق الآخر ، يمكنك استخدام النمط المعماري لـ Model-View-X. على سبيل المثال: Model-View-Contoller (MVC) ، Model-View-Presenter (MVP) ، Model-View = ViewModel (MVVM). تنتمي هذه الأنماط المعمارية إلى نفس النوع من العمارة ، وبالطبع فإن هذا النوع من العمارة لا يشمل فقط الأنواع المدرجة ، ولكن أيضًا الأنماط المعمارية الأخرى. هنا ، من أجل وصف هذا النوع من النمط المعماري بشكل أكثر ملاءمة ، سأشير إليها بشكل جماعي كنمط MVx.

عندما تتعلم نمط MVx ، يرجى تذكر أن هذه ليست بنيات ، ولكنها أنماط معمارية. تُستخدم هذه الأنماط المعمارية فقط لمنطق عرض واجهة المستخدم. لذلك ، مجرد استخدام MVx لا يمنحك بنية جيدة. للحصول على بنية جيدة ، تحتاج إلى بذل المزيد من الجهود في مجالات أخرى لتحقيق ذلك.

  • تعدد

سيفهم مطورو Android ذوي الخبرة خاصية تعدد المواضيع ويفهمون تأثيرهم على التطبيقات. قد تقول إنني بارع في AsyncTask و RxJava و coroutines ، إلخ. إن موضوع متعدد الوظائف الذي أود أن أعبر عنه ليس ما تفهمه. لا يختلف استخدام إطار عمل متعدد الخيوط مثل فهم سلاسل المحادثات المتعددة.

على سبيل المثال ، يعتقد العديد من مطوري Android أن استخدام AsyncTask سيؤدي إلى حدوث تسرب للذاكرة. يأتي هذا العرض من قاعدة الوبر الافتراضية متعددة الخيوط في Android Studio. في هذه الحالة ، هل هذا الرأي صحيح؟ للأسف ، هذا الرأي خاطئ. هنا ، لن أشرح تفاصيلها ، يمكنك قراءة هذه المقالة ، التي تحتوي على الكثير من المحتوى حول AsyncTask.

أعتقد أنه لفهم العمليات متعددة الخيوط ، يجب أن تكون قادرًا على استخدام أي إطار عمل متعدد الخيوط ، حتى مؤشر الترابط الأساسي ، لكتابة رمز متزامن صحيح. لتحقيق هذا الهدف ، لا تحتاج فقط إلى معرفة واجهة برمجة التطبيقات لمكتبة multithreading التي تريدها ، بل تحتاج أيضًا إلى فهم تفاصيل multithreading. على الرغم من أن هذه المكتبات متعددة الخيوط سهلة الاستخدام ، إذا كنت لا تفهم التفاصيل الأساسية للترابط المتعدد ، فالمسألة ليست سوى مسألة وقت قبل أن يواجه تطبيقك مشاكل متعددة الخيوط.

إذا كنت تريد تعلم تعدد المواضيع ، فابدأ بهذا الفيديو ، الذي يشرح المفاهيم والمبادئ الأساسية التي يحتاج جميع مطوري Android إلى معرفتها.

  • اختبار آلي

على حد علمي ، لا تستخدم العديد من مشاريع Android أي اختبارات آلية. يتم تنفيذ معظم المشاريع التي تستخدم الاختبار الآلي أيضًا بواسطة موظفي ضمان الجودة باستخدام أدوات مثل Appium. هذا هو الوضع الحالي لصناعة Android بأكملها ، وهو أمر محزن للغاية. يمكن إرجاع سبب عدم وجود اختبار آلي إلى أصل Android ، ولم تهتم Google بالاختبار التلقائي لتطبيقات الجهات الخارجية لفترة طويلة.

في الوقت الحاضر ، هناك حاجة كبيرة للمطورين ذوي الخبرة في اختبار الوحدة واختبار أتمتة واجهة المستخدم. حتى إذا ذهبت إلى مقابلة مع شركة لم تستخدم أي اختبار آلي ، إذا قلت أنه يمكنك أتمتة الاختبار ، فسوف تحصل على نقاط إضافية مقابل مقابلتك. على العكس من ذلك ، إذا ذهبت إلى شركة تستخدم الاختبار الآلي على نطاق واسع ولم تكن لديك المهارات اللازمة لأتمتة الاختبار ، فهذا سيمنحك نقاطًا للمقابلة وستكون في وضع غير مؤات.

لذلك ، أقترح على كل مطور أندرويد معرفة المعرفة ذات الصلة بالاختبار الآلي. أنا شخصياً أفضل اختبار الوحدة. وبعض المطورين مثل الاختبار الآلي لواجهة المستخدم. لذلك ، يمكنك اختيار تقنية تهمك أكثر وتجربتها.

خبرة 4+ سنوات

إذا كانت لديك بالفعل تجربة تطوير غنية جدًا مع Android ، فقد حان الوقت لتعلم بعض مهارات "meta" وإجراء بحث متعمق في مجالات محددة. في رأيي ، المهارات التالية هي اتجاهات جيدة للغاية للمطورين المحترفين.

  • تقييم الحلول التقنية

إذا لم تكن قد فعلت ذلك بعد ، فقد حان الوقت لبدء القيام بذلك. يحتاج كل قرار تقني مهم إلى تقييم ووزن. في بعض الأحيان ، تكون نتائج مثل هذا القرار جيدة جدًا وفورية. ولكن في معظم الأحيان ، لا يمكن دائمًا رؤية النتائج على الفور. بشكل عام ، كلما كان نطاق صنع القرار أكبر ، زاد نطاق التقييم. بالإضافة إلى الأشياء التي يمكن أن تتخذ قرارات بسيطة ، هناك العديد من العناصر القابلة للتقييم والتي تكون مجردة للغاية ولا يمكنها رؤية النتائج في وقت قصير.

تحت مستوى خبرتك الغنية ، في مواجهة العديد من الخيارات ، يجب عليك على الأقل معرفة كيفية العثور على المقايضات. إذا كنت تستطيع تقديم اقتراحات مفيدة لتقييم الحلول التقنية ، فأنت ممتاز. تقييم البرنامج الفني يزن هذه مهارة معقدة للغاية. عادة ، عند المناقشة مع المطورين الآخرين ومديري المشاريع وحتى موظفي الأقسام الأخرى ، يمكنك العثور على حل وسط ويمكنك تقييم الحل. لذلك ، في معظم الحالات ، ما عليك سوى إتقان القدرة على تقييم البرنامج.

إذن ماذا نعني "بتقييم الحلول التقنية"؟ لنكون صادقين ، من الصعب تحديد ماهيتها. ومع ذلك ، يمكننا تقديم بعض الأمثلة المضادة لشرح سبب عدم ملاءمتها للاستخدام في التطوير. فمثلا:

يجب أن نرحل استخدام خيوط متعددة إلى RxJava بدلاً من AsyncTask ، لأن AsyncTask سوف يسبب تسرب للذاكرة.

كما قلت سابقًا ، لا يتسبب AsyncTask في حدوث تسرب للذاكرة. لذا فإن الجملة أعلاه خاطئة. المطور الذي قال أن هذا لم يخوض في تعدد مؤشرات الترابط. بالإضافة إلى ذلك ، لم يذكر مشكلة RxJava. للمطورين في مشروع ، RxJava لديه منحنى التعلم حاد.

يجب أن نكتب اختبارات الوحدة لرمزنا الجديد ونضع هدفًا طويل المدى لتغطية جميع الشفرات لضمان جودة الشفرة الخاصة بنا.

تحتوي هذه الجملة على عدة مبانٍ. أولاً ، من المستحيل بالنسبة لنا أن نبدأ اختبار الوحدة الآن ، وعلى الأقل يحتاج المطورون إلى استثمار الوقت لتعلم هذه التقنية. اختبارات وحدة الكتابة قرار حكيم للغاية. لا يمكننا كتابة اختبارات الوحدة لجميع التعليمات البرمجية ، لأن بعض الأجزاء غير مستقرة. أخيرًا ، لا يؤدي الوصول إلى أهداف تغطية محددة إلى تحسين "الجودة" تلقائيًا. في هذا المثال ، لا يفهم المطورون اختبار الوحدة ، ولا يمكنهم تحديد المشكلات والتأثيرات التي ينطوي عليها استخدام اختبار الوحدة في المشروع.

آمل أن تكون لديك بالفعل فكرة عامة عن "تقييم الحلول التقنية". إذا كان لديك قرار مهم ، فأنت بحاجة إلى إكمال جميع الأبحاث اللازمة. إذا كنت لا تزال لا تستطيع رؤية الشبكة المعقدة الموجودة في التقييم بأكمله ، فقد يكون بحثك لم يتم بشكل جيد. عند اتخاذ القرارات ، قد تكون بعض الأشياء خارج نطاق التكنولوجيا ، وتحتاج أيضًا إلى النظر في تأثير قرارك على الزملاء في الأقسام الأخرى.

  • المجال المهني

كيف تميز بين خبير تقني ومطور عادي؟ هل هو عدد المفاهيم التي نعرفها؟ في رأيي ، من حيث التكنولوجيا ، يعتمد التمييز بين الخبراء بشكل أساسي على عمق المعرفة.

كخبير تقني ، يجب أن يكون لديك واحد أو أكثر من المجالات المهنية. أنت تعرف التفاصيل في هذه المجالات ، أكثر بكثير مما يعرفه المطور العادي. أنت بحاجة إلى بحث متعمق ومتعمق لضمان عمقك المهني وفهم آخر التطورات في المجال المهني. بالإضافة إلى ذلك ، حتى إذا كنت لا تستخدم تقنيات معينة في أي مشروع ، فستحتاج أيضًا إلى دراسة التكاليف المختلفة المرتبطة باستخدام هذه التقنيات.

في الوقت الحاضر ، من الصعب أن يكون لديك مجال مهني خاص. هذا لا يكفي لتحديد بعض المقالات الجيدة من المدونة لقراءتها ، ولا يكفي قراءة بعض الكتب الجيدة والعديد من الدورات التدريبية الجيدة. بالطبع ، التعلم من خلال هذه المحتويات مفيد لمسار الخبير الخاص بك ، ولكن الطريقة الوحيدة للحصول على مجال مهني خاص بك هو المشاركة بنشاط في التعلم والبحث واكتساب الكثير من الخبرة.

يعجبني حقًا ما قاله الفيزيائي نيلز بور:

الخبير هو الرجل الذي ارتكب كل الأخطاء التي يمكن ارتكابها في مجال ضيق.

في أي المجالات يمكننا إجراء بحث متعمق؟ في الواقع ، يمكن دراسة كل شيء تقريبًا بعمق ، وفي مجال تطوير البرمجيات ، لن يكون هناك مجال صغير جدًا بحيث لا يمكن تحديده كهدف مهني. في هذا الصدد ، لدي أيضًا بعض الاقتراحات:

  • واجهة المستخدم
  • بناء النظام
  • العمل دون اتصال
  • التزامن
  • NDK
  • التكامل المستمر
  • أداء
  • هندسة معمارية
  • مراقب
  • ادارة مشروع
  • مجال الخبرة

هناك الكثير والكثير. وتجدر الإشارة إلى أن بعض المحتوى الذي ذكرته أعلاه ليس تقنيًا تمامًا. طالما يمكنك توليد قيمة لصاحب العمل الخاص بك ، يمكنك اختيار أي مجال تريده وإجراء بحث متعمق.

أعتقد أن خبير Android الفني لديه على الأقل من 2 إلى 3 مجالات مهنية. على سبيل المثال ، المجالات المهنية الخاصة بي هي: الهندسة المعمارية واختبار الوحدة والتوافق وحقن التبعية. أعتقد أنه في المستقبل القريب ، سأكون قادرًا على إضافة "شفرة إعادة بناء الأجداد" إلى قائمة المهارات المهنية الخاصة بي.

لذا ، إذا كان لديك أكثر من 4 سنوات من الخبرة ، فما هو مجال خبرتك؟

الملخص

أعلاه ، هذه هي المهارة التي أقترح أن تكون لديك كمطور Android محترف.

أخيرًا ، أكرر مرة أخرى ، إذا كنت تريد أن تكون مطور Android ممتازًا ، فيرجى التركيز على إجراء بحث متعمق حول الأساسيات والأشياء المهمة.

في الواقع ، بالنسبة للمبرمجين ، هناك الكثير من محتويات وتقنيات المعرفة للتعلم. إذا لم يتم القضاء علينا من قبل البيئة ، فيجب علينا تحسين أنفسنا باستمرار.

بالنسبة للعديد من مهندسي Android المبتدئين والمتوسطين ، إذا كانوا يرغبون في ترقية مهاراتهم ، فغالبًا ما يجدون طريقهم الخاص للنمو ، ويكون تأثير التعلم غير المنظم غير فعال وطويل ولا حول له ولا قوة. تأمل تقنية العمارة المصنفة أن يكون لها بعض المراجع لأصدقاء تطوير Android وتجنب الالتفافات. محور هذه المقالة هو ما إذا كنت قد اكتسبت ونمت ، والباقي ليس مهمًا. آمل أن يتمكن القراء من تذكر ذلك.

وأخيرًا ، أريد أن أحصل على راتب مرتفع لتحقيق قفزة نوعية في التكنولوجيا لتحسين الراتب. الطريقة الأسرع هي أن يأخذك أحد الأشخاص للتحليل معًا ، بحيث يكون التعلم هو الأكثر فاعلية ، لذا لكي يتقدم الجميع بسلاسة إلى مهندس معماري كبير ، كنت مستعدًا خصيصًا لك مجموعة من البرامج التعليمية الرائعة لمهندسي Android مثل شفرة المصدر وفيديو الإطار للتعلم الرئيسي للتأكد من أن راتبك يرتفع إلى مستوى أعلى بعد أن تتعلم.

عندما يكون لديك مسار تعلم ، وماذا تدرس ، وتعرف كيف تسير في المستقبل ، فإن النظرية هي الممارسة دائمًا.

إليك بعض السلع الجافة الحصرية التي تمت مشاركتها معك اليوم:

[ملاحظات نقاط المعرفة الأساسية لتطوير Android]

[خريطة دماغ التفكير في Android (شجرة المهارات)]

[الروبوت وثيقة PDF التكنولوجيا المتقدمة الروبوت ، BAT مقابلة مصنع كبير تحليل السؤال الحقيقي]

[مصادر التعلم عن طريق الفيديو في بنية Android المتقدمة]

أصبح فيديو التعلم على Android أكثر قوة بعد تلقي الدراسة! ادخل مصنع باتج (تحضير)! في الوقت الحاضر ، يقال أن الإنترنت بارد في الشتاء. في الحقيقة ، أنت فقط في السيارة الخاطئة ولا ترتدي الكثير (المهارات). إذا ركبت في السيارة المناسبة ، فإن قدرتك التقنية قوية بما يكفي. ومن القضاء على نهاية العمل الرائب! في الوقت الحاضر ، هناك الكثير من المبرمجين المبتدئين في السوق. هذه المجموعة من البرامج التعليمية مخصصة لمطوري Android الذين تتراوح أعمارهم من 1 إلى 6 سنوات وهم في فترة عنق الزجاجة. إذا كنت ترغب في كسر زيادة راتبك في السنوات القليلة المقبلة ، فإن كبار مهندسي ومهندسي Android المتقدمين أكثر أهمية بالنسبة لك إذا حصلت على سمك ، احصل عليه الآن!

[فيديو تعليمي متقدم من Android] ، [مجموعة كاملة من مقابلات الغش بتنسيق PDF في Android] ، [ملاحظات نقطة المعرفة الأساسية لتطوير Android] يمكنك الوثوق بي بشكل خاص في [Android] مجانًا!

2020 الخلط أنا لا أعرف ماذا نتعلم؟ مهارات الروبوت للذهاب من خريطة

تجربة المقابلة الروبوت المهارات اللازمة احتياطيات مفصلة، وقد حصلت على هذا العرض

الاتجاه الفني الخلط؟ كبار الحديث المطور المحمول حول اتجاه مستقبل العاملين في مجال التنمية الروبوت

ازالة العقبات مقابلة الروبوت - وسوف إعداد فرشاة الأسئلة وجهه قبل المقابلة

هذا هو عبارة عن مجموعة من الشركات المصنعة من الدرجة الأولى الروبوت نظام مهندس المهارات الأساسية طرق التعلم +

سجل حصري | في صربيا، الصين الخبراء الانتباه لعدم توصية فقط

الغاز ووهان مع الألعاب النارية

لحظة خاصة جدا من القمة، وطرح الرئيس الصيني شي جين بينغ إلى الأمام هذه الأفكار

حضر الأخبار السياسية العين شو شي جين بينغ هذه القمة الخاصة، وطرح حرب عالمية "الطاعون" سياسة الصين

@ خريجي كلية، هذه المبادرات تساعد عملك

"أريد أن أتذكر ما كنت تبدو وكأنها"، والمرحلة الأولى من "سحابة الصورة" ملصق على الخط الساخن

انخفض النفط الخام خسائر فادحة 75 مليار دولار فى الشهر، "اثنين برميل من النفط" لماذا تكلفة بفضل منخفضة لأكثر من ذلك؟