- أكوا ويب |
| 5 مكتبات رئيسية عليك تعلمها و إستخدامها في مشروعك الأندرويد Posted: 14 Apr 2018 02:51 PM PDT في السنوات الأخيرة شهد نظام الأندرويد نموا كبيرا، إذ أصبح يغطي مجمل الأجهزة الإلكترونية الذكية. كما أن هذا التطور كان له تبعات على مستوى تطوير النظام حيث نشهد كل سنة إصدار جديد من نظام الأندرويد. و إذا كنت من مطوري تطبيقات الأندرويد ستلاحظ انه هناك تعقيدات كثيرة في التطوير و تحتاج لجهد كبير من أجل إتمامها بالشكل المطلوب، من هنا ظهر مبدأ المكتبات التي تساعدنا على تجنب إعادة كتابة أكواد كبيرة و معقدة و قد تأخذ منا أياما كثيرة. إذن صديقي في هذا المقال سوف أقدم لك 5 مكتبات يجب عليك العمل بها دائما في بدايتك لأي مشروع على نظام الاندرويد ستحتاجها لتطوير التطبيق الخاص بك و ستوفر عليك الكثير من المهام ايضا . 1- مكتبة GSON:هي مكتبة بلغة الجافا تساعدنا على عمل serializing و deserializing للكائنات (Object) من و إلى (JSON) . هذه المهمة تحتاجها دائما عند إتصالك ب API . (من الأفضل دائما إستخدام JSON لانه أسهل و أخف من XML) مثال : 2 - مكتبة RETROFITمن وقعها نجد المطورين يقولون : "Retrofit turns your REST API into a Java interface. " إنها حل أنيق لتنظيم إتصالاتك بالأنترنت و الوصول لنقاط API الخاصة بك . يكفي إنشاء ل Interface و إذراج مكونات API كرابط الإتصال و طريقة الوصول و المعطيات الراد إرسالها . المكتبة تستخدم نظام annotation الشيء الذي يجعل الكود الخاص بك أنيق و مرتب مثال : 3 - مكتبة EVENTBUSهي مكتبة تسهل الإتصال بين مختلف مكونات تطبيقك. مثلا عندما نريد إرسال شيئ من Activity إلى سيرفيس يشتغل حاليا بالطريقة التقليدية قد تكون المهمة صعبة نوعا ما . او عتدما تريد الإتصال بين fragments . هذا مثال لإستخدام المكتبة عند الإتصال بالأنترنت او فقدان الإتصال : 4 - مكتبة ACTIVEANDROIDهي مكتبة ORM للأندرويد (Object-relational mapping) و هي تجريد و تطوير عن SqLite التي تمكنك من الإتصال بقاعدة بيانات محلية على الجهاز و بدون كتابة أي صيغة SQL . بحيث اي كائن يرث من ActiveAndroid يمكن حفظه بالشكل التالي : الشيء الذي يساعد على تفادي كتابة كود SQL طويل مثل : مثال لإستخراج كل المستخدمين من قاعدة البيانات : بإستخدام SQL يكون بالشكل التقليدي التالي : ActiveAndroid هي مكتبة رائعة لإزالة إستعلامات SQL المعقدة من التطبيق و التواصل بشكل رائع و سلس مع قاعدة البيانات بشكل مباشر وبدون تعقيد . يوجد ايضا مكتبات أخرى من هظا النوع مثل GreenDAO و ORMLite 5 - مكتبة UNIVERSAL IMAGE LOADERهي مكتبة نمكن من تحميل و تخزين الصور بشكل غير متزامن حيث تقوم بالعمل في خلفية التطبيق و بدون تشويشات الشي الدي كنا نقوم به بإستخدام thread و AsyncTask . مثال : ما رأيك في المكتبات التالية؟ و هل لديك أي مكتبات اخرى تستخدمها انت شخصيا ؟ شاركها معنا في تعليق . |
| قائمة اهم اللغات البرمجة التي يجب عليك معرفتها للولوج لعالم الهاكينغ و الإختراق Posted: 14 Apr 2018 06:19 AM PDT لا خلاف ان اي عالم تقنية مهما كان يضم لغات برمجية خاصة به، او لغات برمجية مستخدمة في ذلك المجال، سواء الإلكترونيات او الروبوتات او تطوير الويب او التطبيقات او الهواتف الذكية و حتى النظم و كل شيئ تستطيع إلتماس مبدأ الآحاد و الأصفار فيه هو مجال يتعطش للبرمجة، فالبرمجة مثل الماء، تجعل من كل مجال رقمي مجالا حيا . و بتخصيص المجالات الرقمية و التقنية أكثر، فنستحدث اليوم عن مجال الإختراق او الهاكينغ (Hacking)، دعني أحدد هنا اننا لا نتحدث عن الإختراق الأخلاقي او اللااخلاقي، فذلك القرار يعود إليك و الى نيتك إتجاه ما تريد تعلمه في الأخير و الأهداف القابعة خلفه، و ما نستطيع توفيره في هذا المقال، هو كم من المعلومات و بالتحديد معلومات خاصة بأهم اللغات البرمجية التي يجب عليك تعلمها و إتقانها للإنغماس في مجال الإختراق ككل ( سواء الأخلاقي او الغير أخلاقي ) . يجوز بالذكر أن تعلم لغات البرمجة التالية لا يعني أنك ستصبح " هاكر " و تنشر في حسابك على الفيسبوك او تويتر " تم الدعس ... راقب حسابك ! "، بل من شأن اللغات البرمجة التالية ان تمدك بالخبرات اللازمة للتعامل مع أي صعوبة برمجية تقابلها أثناء سيرورة عمليات اختبار الإختراق التي ستقوم بها، و تذكر، انه لتعلم الإختراق تحتاج الى كورسات و دورات و مقالات مخصصة أيضا في المجال الى جانب تعلم اللغات البرمجية التالية، لأساعدك أكثر على فعل ذلك، أقترح عليك كم المقالات التالية الخاصة بإختبار الإختراق : مجموعة مواقع لتعلم مجال الإختراق الأخلاقي Ethical Hacking مثل المحترفين قائمة لأقوى 10 أدوات إختراق لنظام الـ Kali Linux عليك معرفتها و إحترافها إليك الشرح و التعريف الكامل لجميع أدوات نظام الـ Wifislax التي ستحتاجها كيف احمي نفسي من الإختراق ؟ إليك خطوات وقائية و عملية عليك العمل بها دائما 5 قنوات يوتيوب إحترافية لتعلم الإختراق الأخلاقي (Ethical Hacking) إليك أزيد من 10 توزيعات لينكس (Linux) الخاصة بإختبار الإختراق أهم التقنيات و المهارات التي يجب عليك معرفتها و إحترافها للولوج إلى عالم الإختراق ننصحك إذن بعد قرائتك لهذا المقال، ان تتطلع على المقالات أعلاه لتتخصص أكثر و تطور معلوماتك أكثر، فكما سبق الذكر، لغات البرمجة في مجال الإختراق كفيلة فقط بشرح المشاكل او ميكانيكية عمل المنصة التي انت بصدد إختراقها من اجل كشف نقاط ضعفها . - لغة البرمجة Ruby :للغة البرمجة Ruby و كذلك إطار العمل الخاص بها Rails خواص عديدة و قوية، قد تكون لغة Ruby صعبة قليلا في الفهم او التعامل، لكنها جديرة بالإستخدام كما انها ذكية للغاية و قوية في المجال . - لغة البرمجة Python :للغة البرمجة بايثون العديد من الإستخدامات في الشأن البرمجي، يمكن إستخدامها في إنشاء برمجيات ديسكتوب، او برمجيات ويب، حتى في تحليل البيانات و الـ Data Science و العديد من المجالات الأخرى، و يجوز بالذكر انها تُستخدم كذلك في مجال الإختراق، فالبايثون أساسية في عالم الإختراق لتوفيرها لعدة حزم من اجل كشف ما وراء سطور برمجيات و منصات تستهدفها، و كشف ثغراتها و تجميع البيانات حول المنصة المستهدفة .ليس هذا فقط، بل يوجد حزم في لغة البرمجة بايثون تمكنك من صناعة برمجيات إختراق قوية قادرة على كسر حاجز الأمان الخاص بالعديد من البرمجيات، ستحتاج الى دورات قوية في تعلم إستخدامها بالطبع لكن تعلمك لها سيوفر لك خبرة قوية في صناعة برمجيات خاصة بك قادرة على إستهداف اي منصة . - لغة البرمجة Javascript :الجافاسكربت من اللغات البرمجية القوية اليوم في عالم الويب، و يمكن تقريبا كشف نقاط ضعف أي موقع او تطبيق ويب عن طريق الجافاسكربت، لا بل يمكن برمجة سكربتات او شفرات برمجية يمكن تطبيقها في كونسول اي موقع لإستخراج العديد من ثغراته و نقاط ضعفه، و قد شاهدنا هذا كثيرا في مباريات و منافسات الـ CTF إن شاهدت يوما إحداها .الجافاسكربت لا غنى عنها في كشف نقاط ضعف تطبيقات الويب اليوم، بل إمتداد الجافاسكربت وصل للديسكتوب أيضا، و يمكن برمجة تطبيقات على سطح المكتب قادرة على إستخراج نقاط ضعف المنصات المستهدفة في عملية الإختراق الخاصة بك، و تعلمك للجافاسكربت ضروري اليوم للتعامل مع أي تطبيق ويب سواء برمجيا او في عالم الإختراق . - لغتي البرمجة C/C++ :لغتين لم أفصلهما، قررت تجميع كليهما في صنف واحد و ذلك لأن الغاية واحدة منهما، تعتمد كل من الـ C و الـ Cpp على خاصيتي الـ Assembling، اي ببساطة هما لغتين قادرتين على التعامل مع الـ Machine Language لكن بطريقة آدمية، إذ يمكنك التحكم في عناصر الهاردوير مثلا عن طريقهما، لذلك يتم إستخدام كل من الـ C/C++ في برمجة انظمة التشغيل مثل اللينكس و اليونكس .قد تحتاج الى اللغتين التاليتين انت كذلك للتعامل بشكل أكثر جدي مع الأجهزة التي تستهدمها، فأنت لا تستهدف دائما فقط تطبيقات الويب او الديسكتوب، بل أحيانا ستحتاج الى إنتهاك حرمة جهاز إلكتروني ما ربما لا يمتلك إطلاقا حتى نظام تشغيل او شيئ من هذا القبيل، و للتَمَكُن منه ستحتاج الى التحكم به عن طريق لغات Assemble مثل الـ C او C++ . - لغة SQL :الـ SQL او Strectured Query Language، يتم إستخدام الـ SQL على شكل اوامر او ما ندعوها بالـ Query، هذه الأخيرة تتصل بقواعد البيانات، ثم تقوم بجلب البيانات التي تريد من خلال اوامر اخرى تتضمنها هذه اللغة، فللحصول مثلا على كل البيانات الخاصة بالمستخدمين الموجودين في جدول Users من قاعدة البيانات الخاصة، يمكنك إستغلال الكود البرمجي Select * from users للحصول على كل المعلومات .تُصاحب الـ SQL لغات ديناميكية أخرى مثل الـ Php التي بدورها قد تغفل أحيانا على بعض أساسيات الـ Query مسببة ثغرة، أشهرها الـ SQL Injection . تعلمك للـ SQL ضروري من أجل التواصل مع قواعد البيانات و إلتماسها و العثور على البيانات و ما الى ذلك . - لغة الـ Java :الجاف لغة برمجية متحررة كذلك و إستخدامها واسع سواء على الويب او الديسكتوب و كذا الموبايل، لا ننسى انه يمكن إستخدام الجافا على نطاق الـ Data Science و التحليلات البنيوية، على العموم، تعلمك للجافا سيساعدك على كشف الثغرات و المشاكل و كذا التهديدات الخاصة بالبرمجيات التي تستخدم الجافا كلغة أساسية، فالجافا واسعة النطاق و برمجياتها كثيرة، معرفتك لمقادير الحلوى التي صُنعت بها تلك الحلوى سيُمكنك من تغيير نكهتها او كشف النكهات التي تُفسد الحلوى الخاصة بك .- لغات برمجية أخرى قد تود تعلمها :ما طرحناه في الأعلى من لغات برمجية لا يعني إتقانها كلها، بل بعضها كفيل بإدراجك للمجال، قد أرشح لك شخصيا الروبي او البايثون، لكن إن درست مسبقا الجافا او لك إختصاص في لغة البرمجة الجافا على سبيل المثال، فيكفي الإطلاع على الجزء الخاص بكيفية إستغلال الجافا في عمليات الإختراق، و نقترح عليك في هذا النطاق، لغات برمجية أخرى إن كنت تتقنها او لديك معرفة واسعة بها، فيمكنك ببساطة تطوير تقنياتك فيها و الإطلاع على الجانب الخاص بالإختراق و الهاكينغ في تلك اللغة :- لغة البرمجة Php كون ان جل مواقع الويب اليوم تعتمد على الـ Php او الفريمووركات الخاصة بها . - لغة البرمجة Perl، فالـ Perl من اللغات القديمة و القوية في مجال الهاكينغ كذلك، فقد ساهمت في بناء مشروع الميتاسبلويت كذلك، لكن تطويراتها صعبة، و يُفضل إستخدام البايثون بدلها . - لغة Assembly، لم ندرجها مع الـ C و الـ C++ كونها صعبة التعلم و معقدة، و اللغتين السابقتين كفيلتين بتغطية ما قد تقوم به او تفيدك به الـ Assembly في عالم الاختراق . |
| You are subscribed to email updates from أكوا ويب - موقع شامل لرواد الويب العربي. To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
| Google, 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States | |


تعليقات
إرسال تعليق