التعلم العميق والأمن العملي القائم على الويب بالقدوة

بواسطة Daisy
التعلم العميق والأمان القائم على الويب القائم على الويب على سبيل المثال الطبعة الثالثة شارلوت هاربر 3 يوليو 2024 مقدمة: تعد اعتبارات الأمان في إنشاء البرامج للويب جزءًا مهمًا من خطة أي مطور على الويب وتنفيذها مع هندسة نموذج أولي يمكن الاعتماد عليه ومستقر ومفيد للأغراض العملية. تمييز DOM (علامة كائن الوثيقة) ، مع تنفيذ HTML و JavaScript و CSS بالإضافة إلى برامج الخلفية التي تنفذ Python و C/C ++ و Java و Bash ، تمنح مطوري الويب الحرية والقوة لإنشاء مجموعة واسعة من المشاريع التي تعبر عنها الإبداع ، وتوفير سهولة الاستخدام والوظائف ، وتصوير التواضع والشخصية ، وتوفير سهولة الاستخدام بالإضافة اقتل الوقت أو قم بإنجاز شيء ما على الإنترنت ، وعادةً ما يكون على جهاز الهاتف الذكي الشاشة. معظم الناس لا يعرفون من أين يبدأون عندما يرغبون في إنشاء موقع ويب منخدش ، سوف يميلون إلى البدء على موقع الويب الخاص بشخص آخر وبناء شيء محدود في الوظيفة ، والاعتمادية ، وسهولة الاستخدام ، وخاصة الإبداع عندما كان يمكن أن يكون لديهم أحدث الأدوات القوية تحت تصرفه من أجل بناء شيء مفيد دون إضاعة الأزرار الزمنية ، وخاصة إهدار الأموال التي تدفع مقابل الاشتراكات باهظة الثمن للبرامج التي أراد قلة من الناس استخدامها على أي حال نظرًا لقيودها في سهولة الاستخدام والمرونة. إذا كان لديك بضع دقائق لقراءة هذا الكتاب ومعرفة ما أريد أن تعلمك ، أو حتى التحدث معي شخصياً عن أهدافك والحصول على بعض التوجيهات في الاتجاه الصحيح ، ودافعًا عن تعلم الكود وكتابة البرامج الخاصة بك ، خذ هذا الكتاب إلى المنزل وقم بتجريد بعض الوقت لتعلم بناء تطبيق الويب المؤثر والقوي والبسيط والهمين ، وهو موقع ويب يتواجد كل شيء عليك ويفعل بالضبط ما تريده ويلبي احتياجات جمهورك. ْعَنِّي: أنا مطور برامج معمجموعة من الخبرة في C/C ++ ، Java ، Python ، HTML ، CSS و JavaScript. أقوم ببناء مواقع الويب التي يرغب الناس في استخدامها ، وأرغب في زيارتها ، وحتى الحصول على مدمن لاستخدامها لمجرد التعلم وإعادة إنشاء وقت القتل ، والأهم من ذلك ، أبيع البرامج. إذا كان لديك فكرة عن كيفية رغبتك في الحصول على موقع ويب للبحث عن موقع ويب ، كنت على استعداد لدعمي حتى أتمكن من تلبية احتياجاتي الخاصة أثناء قابلك ، وأنت على استعداد لتغطية تكاليف تشغيل موقع ويب بنفسك ، أود أن أنشأك على YouTube أو Tiktok أو Twitter أو Google أو حتى تطبيق أمان عالي التقنية يمكنك الوصول إليه فقط. بدلاً من محاولة بيعك وقتي ، أحاول شراء لك: أريد أن أتحدث معك في إنشاء تطبيق (موقع ويب) بنفسك بالمعلومات الموجودة بالفعل ، وأعلمك ما تحتاجه لتكون مطور برامج مستقل ، رجل أعمال ، يقود مهنة ناجحة في أي مجال تريده. واسمحوا لي أن أكون واضحا ، فإن التعليم الذي أعطيك سيكون غير رسمي. يمكنك الذهاب إلى المدرسة وتعلم كل هذا مع أالتعليم الرسمي ، أو حتى قراءة هذا الكتاب في المدرسة ، أكمل مهامك ، وأخذ الكثير من تعليمك ، لكنني لن أضعك رسميًا في المقعد الساخن وأطلب منك إكمال المهام. أنا لست أستاذي ، يمكنك أن تفكر بي كصديق يريد إرشادك نحو مهنة يقودها نجاحك الشخصي. وأنا لا أبيع لك النجاح أيضًا ، ستحتاج إلى شرائه مع وقتك. إن تعلم الكود له منحنى تعليمي حاد ولم يكن سهلاً أبدًا ، أو حتى من المفترض أن يكون كذلك. تحتاج إلى العمل بجد قدر الإمكان والاستمرار في المحاولة والفشل والمحاولة مرة أخرى حتى عندما تشعر بالإحباط من أجل التعلم وبناء التطبيقات بنفسك. هذا في طبيعة الكود نفسه. يتم تشغيل الكود بواسطة برنامج التحويل البرمجي المصمم لإعطاء رسائل خطأ المبرمج ، وسيعلمك ذلك كيفية الترميز ، حتى لو كنت ببساطة تقوم بنسخ الخطأ إلى محرك البحث الخاص بك وقراءة أمثلة الآخرين. ويجب أن أقول ، لا تحتاج إلى أن تكون غنيًا للغاية ، ذكيًا ،Esful ، أو حتى التفاصيل موجهة أو منظمة لإنشاء تطبيق. الكمبيوتر يهتم بهذه المنظمة نيابة عنك. تحتاج فقط إلى المثابرة من خلال التجربة والخطأ ، والحفاظ على التركيز والعمل بجد على ما تفعله ، وسيكون لديك مهنة ناجحة للغاية في مجمل ما تفعله. من أكون: أدرك أن القسم الأخير كان أكثر عن التعلم واتخاذ طرق من هذا الكتاب. من أنا بالضبط؟ هذا سؤال معقد. أنا غير واضح في ذلك بنفسي ، لأنني أعاني من الحالات الطبية التي يمكن أن تجعل من الصعب علي حتى أن رمز أو أكتب هذا الكتاب في بعض الأحيان ، مع تقديم التحديات مع القضايا الاجتماعية والهوية التي تجعل حياتي أكثر صعوبة عندما يتعلق الأمر بتقديم نفسي . باختصار ، إذا كنت تقرأ هذا الكتاب ، فقد أحضرته إلى المنزل لأنك انقلبت واعتقدت أنه كان مفيدًا ، أو حتى إذا كنت قد قرأت هذا بعيدًا ، فأنا فرد مشابه يريد أن يراك تنجح كل ما تفعله. أنا مهندس بنفسيالمطور ، وطالب ، وأنا أكتب هذا الكتاب للطلاب الآخرين الذين يرغبون في جعل حياتهم أسهل من خلال امتلاك كتيب للبرنامج الذي يحتاجونه إلى جعل حياتهم أسهل من خلال إعطاء أمثلة لنسخها التي تتناسب معًا مثل لغز كبير في العمل ، تطبيق مفيد ، كبير ، وظيفي ، متماسك ، وجذاب يمكن أن يدفع النجاح بغض النظر عن خط العمل. إلى حد كبير ، هذا ما أقوم به: أقوم ببناء تطبيقات لمساعدة نفسي والآخرين على النجاح. أنا مؤلف أيضًا ، على الرغم من أن هذا هو أول منشور لي أعتزم إكماله من أجل وضع محفظتي معًا في وثيقة مفيدة ، وأنا فنان أيضًا. سأعترف بذلك لك ، أنا شخص غريب نوعًا ما. أنا لست مثاليًا ، لقد قمت بتشغيل INS مع القانون حتى يقودني إلى ترك الكليات والجامعات وترك الولايات من أجل محاولة صنع اسم لنفسي بمزيد من النجاح. أنا امرأة بالولادة ، أرتدي مكياجًا ، وألتقط صورًا لنفسي ، وأرتدي الفساتين وغيرها من الملابس النسائية ، وأظل على وعي بنفسي كأنثى بطبيعتها. لقد واجهت مشكلات مع أشخاص آخرين في الماضي تؤدي إلى صراعات من خلال الكتابة وبناء WebApps ، وأعتذر أنني لم أتمكن من الحصول على هذا الكتاب في يديك عاجلاً: كنت بحاجة إلى هذا. سترغب في قراءة الكود وكتابته يشبهني ويعمل مثل لي ويفعل نفس الشيء ولكنه أفضل ، لأنه إذا كنت تستطيع شراء هذا الكتاب بدلاً من أن يسلح لوحة المفاتيح الخاصة بك مثلما أفعل فقط لإنشاء كتاب بنفسك عن المال لذلك ، لديك الموارد التي تحتاجها لتكون ناجحة في حياتك. كان لدي كل أنواع القضايا مع العائلة التي تكبر ، والظروف الصحية ، والأطباء ، ووسائل الإعلام ، والقانون ، ويعكس قانوني العميق الصراع الذي هو النسوية والطبيعة الإناث في عالم منقسم ومحبط. ومع ذلك ، فإن هذا الكتاب هو شيء يهمني بشدة ، طفلي ، محفظتي ، وسبل عيشتي ، لذلك أقدر اعتبارك عندما تأخذ النص إلى المنزل وتتأمل بعناية من أجل التعلم مني. من فضلك ضع في اعتبارك أنني لستECT ، سيكون لهذا الكتاب أخطاء ومراجعات وإصدارات جديدة ، وستحتاج إلى التفكير في عقلك المنطقي قدر الإمكان من أجل الحصول على تجربة ناجحة في كتابتي. أيضًا ، افهم أنني أقصد جيدًا لك حتى عندما تواجه التحديات عند الكتابة. فكر في الأمر على هذا النحو: عندما يمكنك فقط استئجار نظام كمبيوتر لفعل أي شيء يمكن أن تتخيله في المساحة الرقمية ، وتخزين جميع المعلومات التي تواجهها ، و #$ ٪! yze وتنظيمها ، والتفهمها ، ستفعل ذلك يواجه حتما صعوبات في المعلومات التي تتناولها وحتى النشر. أقول لك هذا لأنني واجهت نفس الصعوبات. استخدم هذا الكتاب على مسؤوليتك الخاصة ، والعمل مع مجتمعك ومجتمعاتك المتاحة لك لإنشاء البرامج ضمن إعداد آمن ، ولا تأخذ الأشياء إلى شخصياً عندما تفشل أو حتى تنجح بالطريقة الخطأ: هكذا حصلت على هذا الوقت ولماذا يمكنني أن أحضر لك هذا النص ومساعدتك على النجاح دون التباعد على طريق الجنوندمرني Aves Me ، ممزقة ومتوترة أثناء مواجهة المشكلات العادية التي يواجهها الجميع على نطاق عالمي بفضل النطاق العالمي البادلي للشبكة التي سنعمل عليها ، الإنترنت. قد لا تكون على دراية بمن أنا فقط ببضع كلمات ، لكنني أشجعك على القراءة ، وسوف تعرفني وأنت تواصل القراءة وفهمي أثناء بناء مشاريعك الخاصة لإكمال عملك. لن يكون هناك أي واجب منزلي مع هذا الكتاب ، طالما أن أساتذتك أو المعلمين لا يعينونك ، لكنني أشجعك بشدة على بناء مجموعة من المشاريع بنفسك أثناء قراءتك ، بالإضافة إلى مشروع Capstone الذي يعرض كيف يمكنك تطبيق ما تعلمته. يعد مشروع Capstone الخاص بي هو الأساس لمعظم ما ستقرأه في هذا الكتاب ، حيث أنه يدمج رمزًا من مشاريعي السابقة ، والرمز الذي قمت بإنشائه وتعلمت الكتابة بشكل منهجي ، ومجموعة واسعة من الأفكار والنصائح التي ساعدتني تنجح إلى النقطة التي يمكنني فيها تدوير تطبيق بسيطمميز بالكامل وتبدو ويتصرف مثل التطبيق الشهير الذي قد ترى صديقك أو عائلتك يستخدم ، على الإنترنت ، المعلن عنه لك ، أو في الأخبار. ما هو هذا الكتاب: هذا الكتاب هو برنامج تعليمي بالقدوة. يمكنك العثور على رمز هنا ، وإرشادات حول كيفية تعلم التعليمات البرمجية ، ومعلومات عن رمز تصحيح الأخطاء ، وإصلاح الأخطاء ، واستكشاف الأخطاء وإصلاحها ، والتعليمات حول كيفية النسخ الاحتياطي وحفظ الكود الخاص بك ، وإعادة النشر إذا قام أي شخص بتقسيم الرمز الخاص بك ، وتأمين الرمز ، ونشره الكود الخاص بك ، وإنشاء مواقع الويب التفاعلية التي تسلية ، وجذابة ، وإدمان ، وستحصل على شعور بمن أنا ، ولماذا هذا مهم ، وكيفية تصوير نفسك وتطبيقك وصورة شركتك ، وكذلك البرامج التي تبنيها في أفضل ضوء مطلق لتكون الأكثر جاذبية قدر الإمكان للمستخدمين النهائيين ، زوار موقع الويب الخاص بك. في هذا الكتاب ، سأعرض عددًا من أمثلة تصميم البرامج مع التركيز على الويب كمنصة وكذلك الأمان. سنبدأ تجربة التعلم من خلال بناء أساسيOJECT باستخدام قذيفة UNIX ، مع ميزات النسخ الاحتياطي والبرمجة. بعد ذلك ، سنقوم بفحص موقع مدونة أساسي ، وترقية مدونتنا بميزات الصور والفيديو بالإضافة إلى استخدام هذه الميزات لتوظيف حلول الأمان باستخدام برنامج مجاني ، وتأمين خادمنا باستخدام وحدة مصادقة قابلة للتوصيل (PAM). سنقوم بعد ذلك بمراجعة معالجة الملفات ومعالجتها واستكشاف تحرير الفيديو والتبرع الصوتي ومسح الباركود والتعرف على الأحرف البصرية ، من بين مفاهيم أخرى. على طول الطريق ، سنقوم بفحص واجهات برمجة التطبيقات التي ستساعدنا على جعل برنامجنا أكثر فائدة وأمانًا ، مع خيارات مجانية ومدفوعة. على طول الطريق ، سوف نستكشف الأمن المادي والأدوات المسلحة مثل تصميم الأسلحة النارية والذخائر وتصنيعها بما في ذلك تصميم البراميل والكرات ، وتصميم البرج والطائرات بدون طيار ، وغيرهم من المديرين الذين سندمجه مع برنامجنا على الشبكة الحالية من أجل حماية برامجنا وإظهار الدفاع عن النفس والتواطؤ. سنأخذ فترات راحة على طول الطريق لبناء الألعاب ، ثنائية الأبعاد و 3Dالمحركات النهائية ، والعمل مع الأجهزة المدمجة في حالة دراسة أمثلة على دراسة برامج تقديم الأبعاد الأساسية ومدلك تهتز إلكتروني يلقي في مطاط السيليكون على التوالي. على طول الطريق ، سنستخدم أيضًا حلول التعلم الآلي المتاحة بالفعل من أجل تأمين برنامجنا بشكل أفضل. سنستخدم أيضًا أدوات الأسهم المتاحة للويب من أجل تبسيط العملية وتأمينها. هذا الكتاب هو دليل لنجاحك في بناء تطبيق ويب ودمجه مع شبكة مهنية من الكمبيوتر والأنظمة الميكانيكية المدمجة ، وإجمالي دليل بناء البرامج والأجهزة المضمنة دون معرفة أساسية أو خبرة سابقة. ما ليس هذا الكتاب: إذا كنت ترغب حقًا في الحصول على موقع ويب ، فيمكنك فقط إعداد متجر بسيط وبيع ما تحتاجه ، أو نشر مدونة ، أو نشر صور أو مقاطع فيديو ، أو غير ذلك دون كتابة سطر واحد من التعليمات البرمجية. هذا الكتاب ليس ذلك. سوف يعلمك هذا الكتاب كيفية إنشاء برنامج أكثر فائدة وكاملةقد يكون من المفيد تشغيله على نطاق واسع من أي برنامج يمكنك العثور عليه بالفعل ، لأنه ينشر أحدث البرامج التي لا تزال نماذج أولية ، قد تكون مكلفة لتشغيل الشركات الأقدم على نطاق واسع ، ولا تروق للشركات المعقدة. كسب المال للأشخاص الذين لا يفعلون أي شيء حقًا. إذا اتبعت هذا الكتاب عن كثب ، فستحتاج إلى كتابة رمز ورمز بحث وإنشاء تطبيقاتك الخاصة ، وسوف تجني أموالًا مما تفعله. سأجني المال من هذا الكتاب ، حتى في المراحل المبكرة ، لأنه يحتوي على معلومات يحتاجها الناس ويريدون القراءة ، ويشتري بالفعل عند شراء أو استخدام تطبيقاتي. لن يقوم هذا الكتاب بإنشاء تطبيق لك ، لكنه سيوجهك في الاتجاه الصحيح ويسددك بالأدوات التي تحتاجها والمهارات والنصائح التي ستسهل نجاحك في بناء البرامج للويب ، مع كل سطر من سطر رمز ستحتاج إلى الكتابة كمثال ، على استعداد للتجميع معًا في البرامج أنت ومؤيديك ، الضيوف ، العملاء ،يرغب Riends والأسرة والزوار والمقاولين وأفراد الإنترنت في استخدام ودعم. ماذا ستتعلم: سيعلمك هذا الكتاب كيفية إنشاء وبيع البرامج ، والبرامج الوظيفية ، والمفيدة حقًا ، وتسجيل الوسائط ، وميزات أمان مثل التعرف على الوجه ، ومسح باركود المنطقة القابل للقراءة ، وواجهة برمجة تطبيقات الويب للمصادقة وتسجيل الفيديو وصورها ، وتبادلها ، وتبادل الرسائل مثل Bluetooth وبالقرب من التواصل الحقل (NFC). سيعلمك هذا الكتاب كيفية استخدام جهاز كمبيوتر متصل بالشبكة ، مع التركيز على Debian Linux ، وكيفية إنشاء رمز Bash لجعل تثبيت ودعم البرنامج الخاص بك نسيمًا سلسًا آلي الأشياء بشكل جيد باستخدام أنماط CSS مع Bootstrap ، وتمكين تسجيلات تسجيل الدخول والتفاعل من خلال الأجهزة المربوطة بالشبكة ، وبناء الوسائط التفاعلية والشبكة مع مواقع الويب الأخرى لتقديم ميزات أمان مثل الرسائل النصية للتحقق أو غيرها الأغراض ، المسح الضوئي ، اعتدال الصور والفيديو ، البياناتRansactions للحفاظ على آمنة البرنامج ، ومعالجة الدفع ، وتداول العملة المشفرة ، والمهام غير المتزامنة ، وأكثر من ذلك. سوف تتعلم كيفية إنشاء أجهزة Bluetooth الخاصة بك ، مع البطاريات والشاحن وموكنتات متحكم ودوائر ومحركات وأجهزة الاستشعار ، باستخدام اللحام والأسلاك والمواد المطبوعة ثلاثية الأبعاد بالإضافة إلى المواد المصبوب. سأعرض مبادئ التصميم ثلاثية الأبعاد المطبقة على التصنيع المضافة وصنع الأدوات والموت ، لذلك يمكنك تصنيع أجهزة الأجهزة المضمنة الخاصة بك مع بطاريات متكاملة ، شواحن ، دوائر إلكترونية ، والمخرجات الوظيفية. وتواصل معها مع البلوتوث والويب. على وجه التحديد ، سنقوم بفحص دراستين للحالة ، ومدلك تهتز وسلاح ناري محلي الصنع ، كلاهما مبرمج في OpenScad ، والذي يتوفر كواجهة رسومية أو سطر أوامر يمكن دمجه في شبكة ويب للحصول على نتائج أسرع. سوف تتعلم كيفية إنشاء موقع ويب ونشره من الألف إلى الياء دون أي خبرة سابقة ، وجعله وظيفيًا وآمنًا وجميلًا ومفيدًا وأكثرعملي بشكل كبير. سوف تتعلم كيفية استخدام التعلم الآلي ورؤية الكمبيوتر لجعل موقع آمن وأكثر عملية ، وتسجيل الفيديو والصوت من موقع الويب الخاص بك ، والتبرع بصوتك ، وصنع الموسيقى وتعديل الصوت لإنشاء عينات مفيدة ، وكيفية اختراق الضوضاء عن طريق الاستفادة من مواقع الويب الأخرى لإنشاء أفضل شبكة محتملة من مواقع الويب التي يمكنك ربطها مباشرةً بمشاركة جميع المعلومات المفيدة التي تقدمها ، والأهم من ذلك أن تجلب الأشخاص إلى البرامج وأعمالك. سيركز هذا الكتاب بشكل كبير على الوسائط والأمان والتعلم الآلي ، والتي هي المكونات الثلاثة الرئيسية التي ستساعدك على بناء برامج مفيدة للويب من خلال إشراك المستخدمين المناسبين وفصل العناصر الخاطئة بطريقة واقعية وعملية ، وعملية ، يديك والانخراط في حين أيضا تلقائي ، وقوي. يعلم هذا الكتاب Unix ، وتحديداً Debian (Ubuntu) ، و Bash Shell ، و Python ، و HTML ، و CSS ، و JavaScript ، وعدد من حزم البرامج المفيدة لـمثل الطلبات ، بالإضافة إلى برنامج Bash مفيد مثل Git و FFMPEG. سأعلمك أيضًا كيفية تداول العملة المشفرة تلقائيًا ، وأخذ مدفوعات في العملة المشفرة أو من بطاقات الخصم العادية مع دفع زوارك حصة من إيراداتك إذا اخترت القيام بذلك. سأعلمك كيفية كسب المال من موقع الويب الخاص بك من خلال الإعلان أيضًا ، وكيفية إعداد تطبيقك لمحركات البحث وجعله سريعًا ، ومرتبة في الترتيب الأول لما سيبحثه عملاؤك للعثور عليك ، وترتيب أكبر عدد ممكن عمليات البحث قدر الإمكان. سأعلمك كيفية بيع البرامج الخاصة بك ، والإعلان عنها ، والناشئ للعملاء الذين يبحثون عن خدماتك ، وأن تصنع اسمًا لنفسك على الإنترنت من خلال السبل الموجودة بالفعل ، غير مكلفة ، وتعمل بشكل جيد. سأعلمك كيفية حفظ بياناتك على أجهزة الكمبيوتر السحابية التي تعمل من أجلك وحفظ بياناتك بثمن بخس ، وكيفية تخطيط وإنشاء موقع ويب يقوم بما يريده المستخدمون وما تريده ، وكيفية إبقاء المستخدمين مشاركينإن نقر على هواتفهم على هواتفهم بإشعارات ، والبريد الإلكتروني ، والرسائل النصية ، والمكالمات الهاتفية ، والمزيد من السبل لإعادة المستخدمين إلى موقع الويب الخاص بك تحت تصرفك خلف النقر على زر مضمون لك فقط. سيركز هذا الكتاب على التطبيق العملي لنشر وسائل الإعلام وتوزيعها بكميات كبيرة ، من نص إلى صور إلى مقاطع فيديو إلى صوت ، وإحداث انطباع جيد على المستخدمين النهائيين (زبائنك) ، وبيع نفسك بأي طريقة تقوم بها من أجل الإنشاء موقع ويب ، وهو تطبيق يمثل لك وأنت فقط ، ويجعلك وبرنامجك وشركتك تبدو جيدة بأفضل طريقة ممكنة. سوف تتعلم أيضًا بعض النصائح والحيل مني ، من نصائح الترميز ، والغرور العملي مثل الماكياج والتصوير الفوتوغرافي ، والنمذجة والتمثيل ، وأكثر من ذلك ، والتي ستكون مهمة لتصوير نفسك وشركتك في أفضل ضوء ممكن باستخدام جميع الأدوات المتاحة لك أثناء توزيع أكبر قدر من المحتوى الذي تحتاجه عبر توازن صحي من المنصات لجلبكE إلى الثمار دون جهد أو عمل أو أموال أكثر مما هو ضروري. يُطلق على هذا الكتاب اسم "التعلم العملي والأمان القائم على الويب القائم على الويب" لسبب ما: إنه يتعامل مع التعلم إلى التعليمات البرمجية ، وتحديداً على الويب ، وتحديداً مع التركيز على الأمان ، من وجهة نظر عملية ، مع أمثلة على رمز العمل الذي يخدم الأغراض العملية الموضحة في النص. يشمل مكون التعلم في هذا النص أيضًا التعلم الآلي ، والرمز الذي سأوضح لك كيفية التشغيل للويب الذي سيتعامل مقاييس التنبؤ التي يتم الحصول عليها من الصور ، مثل طبيعة الصورة كصورة أصيلة محددة للكمبيوتر أو نسخة بصرية (صورة لصورة أو صورة مطبوعة). يعد التعلم الآلي مهمًا جدًا عندما يتعلق الأمر بأمان الويب وأمان البرامج ، لأنه يمكن أن يتكاثر المهام التي كانت مستحيلة على خلاف ذلك. جهاز الكمبيوتر الخاص بكقم بتسجيل الدخول مع رمز المرور ، ولكن قد يكون من الآمن استخدامه إذا قام بتسجيل الدخول مع وجهك. يمكنك جعل جهاز كمبيوتر خادم آمنًا ، وهو جهاز كمبيوتر يطلب منك عادة اسم مستخدم ورمز مرور وتسجيل الدخول ، ربما مع رمز تأكيد لكل تسجيل دخول جديد أو عنوان IP جديد ، ولكن إذا كنت تقوم ببناء على نطاق واسع ، من السهل القيام به الاستخدام ، البرمجيات الآمنة والقوية بشكل أساسي ، قد يكون هذا كافيًا. إن ربط البرنامج الخاص بك عن كثب إلى برنامج شخص آخر ، مثل خدمة البريد الإلكتروني أو خدمة الرسائل النصية ، لا يكفي لجعل برنامجك آمنًا ، أو أي موقع تستخدمه). أي شخص يبني برامج آمنة لا تشوبها شائبة لديه بعض الإحساس بما ينطوي عليه هذا. البرمجيات غير آمنة بطبيعتها لأن الأجهزة والحسابات التي نستخدمها للوصول إليها ليست دائمًا تحت تصرفنا ، فقد تكون في أيدي أي شخص يعاني من نية للبرنامج ، وبالتالي قد يشكلون خطرًا على البرنامج نفسه. هذا شيء من محور هذا الكتاب. كمبيوتر متصل بالشبكة افتراضيًاتم تأمينه باستخدام رمز مفتاح طويل ، يسمى و SSH أو Secher Shell ، ويتم تأمينه بشكل أفضل مع خادم ويب ، لأن خادم الويب يوفر الوصول المفتوح وكذلك أدوات الأمان الفنية التي تعمل على الخادم نفسه. يتمتع خادم الويب بإمكانية الوصول إلى متصفح الويب الخاص بالمستخدم ، والذي يمكن القول إنه أقوى جزء من جهاز المستخدم ، لأنه المكان الذي يمكن للمستخدم فيه الوصول إلى البرامج الشباعية. يمكن لمجموعة الأدوات هذه تقديم نص ، وصفحات الويب التي تراها ، ويمكنها أيضًا تسجيل الصور والصوت والفيديو (مثل صورة للوجه أو معرف الحالة) ، ويمكنها القراءة والكتابة إلى أجهزة الراديو Bluetooth ، ويمكنها القراءة والكتابة إلى الحقل القريب علامات الإرسال والاستقبال ، وبطاقات المفاتيح غير المكلفة ، و FOBs ، والملصقات ، والخواتم ، وحتى زراعة الرقائق مع أرقام تسلسلية فريدة يمكن قراءتها وكتابتها مع البيانات التي تم إنشاؤها والتحقق من صحتها بواسطة خادم ويب مرتبط بموقع الويب. باستخدام جميع الأدوات الموجودة تحت تصرفك ، مع هذا الكتاب ، سوف تجهز نفسك بالمعرفة لإنشاء موقع ويب آمن ، وعمومانظام كمبيوتر متصل بالشبكة يناسبك ، ويقوم بتقديم مزايدة ، ويبدو ويشعر بالصواب. من أين تبدأ: مرحبًا بك في تخطي القسم الذي أبدأ هذا الكتاب به ، أو أي قسم ، إلى الكود الدقيق الذي تحتاجه ، خاصة إذا كان لديك خبرة في الترميز قبل أو أي من الأدوات المذكورة أعلاه سأصف بالتفصيل في هذا الكتاب وكذلك توثيق حالات الاستخدام والأمثلة العملية عليها. إذا لم يكن لديك خبرة في كتابة التعليمات البرمجية ، فإنني أوصي بشدة بقراءة كل هذا الكتاب ، وأوصي بشكل خاص بقراءة الأقسام السابقة ، للتأكد من أن هذا الكتاب مناسب لك. إذا لم يكن هذا الكتاب مناسبًا لك ، ففكر في تقديمه إلى صديق أو قريب قد يكون مهتمًا بالتعرف على تطوير الويب بأنفسهم ، وحتى التفكير في استعارة الأمر والتعلم منه لملء الفجوات التي فشلت فيها كملف المعلم ، أو المعلمين الآخرين فعل قبلي. ابدأ من أين تريد ، سيكون كل جزء من هذا الكتاب مفيدًا إذا كنت تنوي بناء مفيدPP ، واعتبر أنه تم تصميم أفضل التطبيقات مع وضع المستخدم النهائي في الاعتبار: تعرف على عميلك. أنت تعرفني الآن ، أنت تعرف هذا الكتاب ، وأنت مستعد للبدء. للبدء ، احصل على جهاز كمبيوتر (حتى أرخص كمبيوتر محمول من متجر مربع أو Amazon أو أعمال مكتب قديم ، وقم بإعداده بطريقة تناسبك. كيف تقرأ هذا الكتاب: يبرز النص ، ويشير إلى أن النص ينتمي إلى موجه الأوامر ، حيث ستكتب الرمز الذي تقوم بتشغيله. تركز موجه الأوامر بشكل كبير على لوحة المفاتيح ويتطلب القليل من النقر ، مما يسرع سير العمل الخاص بك وجعل الأمور أسهل عليك. ابدء: دعنا نغوص فيها. سنبدأ ببناء رمز على جهاز محلي ويبدأ دون إنشاء موقع ويب متصل بالإنترنت. هذا أكثر أمانًا للبدء ، ولا يكلف شيئًا ، وهو سهل بالنسبة لك. اعتمادًا على نظام التشغيل الخاص بك ، سيكون الدخول إلى قذيفة باش مختلفة قليلاً. لنظام التشغيل Mac OS ، أوصي بتثبيت جهاز افتراضي في هذه المرحلة ، حيث ستحصل على أكبر قدر من التوافق معالجهاز الظاهري. يمكن لمقدمي الخدمات المختلفة مثل VirtualBox و Paralells تشغيل جهاز افتراضي لك ، على الرغم من أنه من الممكن أيضًا تثبيت Ubuntu مباشرة على الجهاز ، إذا كنت تفضل استخدام بيئة أصلية موصى بها من أجل إنشاء تجربة سريعة ومتبسطة. إذا كنت تستخدم Linux أو Windows ، وهو ما أوصي به ، فيجب أن يكون من السهل جدًا إنشاء مشروع. افتح المحطة الخاصة بك ، واضبط التحجيم كما تراه مناسبًا ، وابدأ في اتباع الخطوة 2. إذا كنت تستخدم Windows ، فيرجى اتباع الخطوة 1. الخطوة 1: - مستخدمي Windows فقط في Windows ، فتح موجه الأوامر كمسؤول ونوع WSL - التثبيت الخطوة 2: - تابع هنا ، أو تخطي الخطوة 1 إلى هنا إذا كنت لا تستخدم Windows في محطة مفتوحة ، (اعتمادًا على نظام التشغيل الخاص بك ، يسمى Ubuntu في Windows أو Terminal في Mac أو Linux ، أو اسم مشابه) ، ابدأ بإنشاء مشروع. نفعل هذا مع أمر mkdir ، والذي ينشئ دليلًا. إذا كنت بحاجة إلى إنشاء دليل لتخزين مشروعك ، وهو أمر موصى به ، استخدمأمر CD للتغيير إلى الدليل و و القرص المضغوط/المسار/إلى/الدليل - المسار هو المجلدات (الملفات) التي تسبق دليل الوجهة الخاص بك ، مسارك الافتراضي هو ~ أو/home/اسم المستخدم (حيث اسم المستخدم هو اسم المستخدم الخاص بك). للتغيير إلى الدليل الافتراضي ، اكتب قرص مضغوط أو قرص مضغوط ~ مثال MKDIR - استبدل "مثال" باسم الدليل الآن لديك دليل عمل لمشروعك. كونه من المهم للغاية حفظ هذا الدليل في حالة حاجة إلى التبديل إلى جهاز مختلف أو نشر الرمز الذي تكتبه بحيث يكون جاهزًا للويب ، سنقوم بإنشاء برنامج نصي لإعداد الدليل الخاص بك في الخطوات القليلة التالية. لكن بناء برنامج نصي يأخذ القليل من التعليمات البرمجية ، ويجب أن يكون الكود أتمتة ليكون مفيدًا قدر الإمكان. لذلك دعونا نبني نصًا لإنشاء البرامج النصية أولاً. لنبدأ بإنشاء البرنامج النصي وجعله قابل للتنفيذ. سنستخدم sudo و chmod و touch لهذا ، واتصل بالبرنامج النصي
sudo touch /usr/bin/ascript
sudo chmod a+x /usr/bin/ascript
sudo nano /usr/bin/ascript
الآن لقد أنشأنا البرنامج النصي ، وجعلناه قابلاً للتنفيذ ، ونحن مستعدون لتحريره. Nano هو محرر نصوص يتيح لك تحرير النص دون النقر ، وهو أسهل بكثير من استخدام واجهة مستخدم رسومية. لتحرير ملف مع Nano ، استخدم Nano ثم المسار إلى الملف. لإنشاء برنامج نصي يصنع البرنامج النصي ، يشبه إلى حد ما صنع البرنامج النصي في المقام الأول. سنستخدم نفس الرمز كما هو مذكور أعلاه ، استبدال اسم البرنامج النصي ، "Ascript" بمعلمة وسيطة ، $ 1. هذا يتيح لنا الاتصال بالبرنامج النصي عن طريق كتابة Supo Ascript Newscript ، وعندها يمكننا إنشاء أي برنامج نصي جديد عن طريق استبدال "Newscript" باسم البرنامج النصي الخاص بك. يجب أن يبدو الرمز في نانو:
sudo touch /usr/bin/$1
sudo chmod a+x /usr/bin/$1
sudo nano /usr/bin/$1
ولإغلاق Nano ، يمكننا الضغط على مفتاح التحكم والضغط على X ، ثم Y للدلالة على أننا نحفظ الملف ، وضرب الإرجاع. الآن بدلاً من كتابة هذه الأوامر الثلاثة لتحرير البرنامج النصي ، سنكون قادرين على كتابة Succript Ascript لتحرير البرنامج النصي مرة أخرى. هذا يعمل! ويمكن تشغيل أي نص جديد بسهولة عن طريق تسميته في القشرة. دعنا نقوم بحفظ عملنا الآن: دعنا نكتب نصًا احتياطيًا لحفظ البرنامج النصي الجديد الخاص بنا ثم نسخه في دليل مشروعنا ، مع دعم البرنامج النصي الاحتياطي أيضًا.
sudo ascript backup
الآن ، في نانو:
sudo cp /usr/bin/backup /path/to/directory/
sudo cp /usr/bin/ascript /path/to/directory/
WHERE/to/to/directory هو المسار إلى المشروع الذي أنشأته مع MKDIR. في وقت لاحق سوف نتعلم كيفية نسخ مسارات التكرار مثل هذه مع حلقة وقائمة ، وهي رمز أقل ، ولكن الآن لنبقيها بسيطة ولدينا بضعة أسطر. لتشغيل هذا البرنامج النصي ونسخ الرمز الاحتياطي الخاص بك ، احفظ الملف في Nano باستخدام Control+X ، Y و Retring ، واكتب أدناه في قذيتك
backup
إذا تمت مطالبتك على الإطلاق بكلمة مرور أثناء قراءة هذا الكتاب والمتابعة في القشرة ، فيرجى إدخال كلمة مرور المستخدم بشكل صحيح ، فسيكون لديك ثلاث محاولات قبل أن تحتاج إلى إعادة تشغيل الأمر. يمكنك استخدام الأسهم لأعلى ولأسفل لإعادة تشغيل الأوامر وتحريرها ، إذا كنت بحاجة إلى تشغيل أي شيء مرتين. اضغط البسيط لأعلى ولأسفل بشكل متقطع لتحديد أمر ، قبل تحرير الأمر مع الأسهم اليمنى ، والحذف المفتاح وكذلك لوحة المفاتيح ، وتشغيله مع الإرجاع.
مبروك! لقد تمكنت من إنشاء برنامج نصي احتياطي رائع يدعم نصين مهمين في دليل العمل الخاص بك. قد نقوم بتحريك الأشياء لاحقًا مع تقدم المشروع ، لكن هذا يعمل الآن. دعنا ننتقل إلى النسخ الاحتياطي في السحابة ، وسنستخدم GitHub لهذا (على الرغم من وجود العديد من حلول GIT الأخرى للنسخ الاحتياطي ، فهي كل شيء على وشك.) البرنامج كما تصنعها إلى خادم ، بينمايمكّنك أيضًا تنزيل نسخ كاملة من برنامجك خلف كلمة مرور أو مفتاح. من المفيد في حفظ البرنامج الخاص بك ، خاصة وأننا نراجع إلى حالات Linux المضمنة التي تنكسر أحيانًا عند فشل سطر واحد من التعليمات البرمجية ، مما يتركك مغلقًا بينما قد لا يتم نسخ الكود الخاص بك إذا لم تحصل على فرصة لدعمه UP تلقائيًا ، والتي سنغطيها.
إذا كنت لا تستخدم بالفعل جهازًا افتراضيًا لـ Ubuntu في هذه المرحلة ، فأنا أوصي باستخدام جهاز افتراضي Ubuntu في هذه المرحلة لأنه سيجعل حياتك أسهل عند تثبيت جميع الحزم اللازمة من أجل إنشاء موقع ويب عام العمليات على جهاز الكمبيوتر الخاص بك. سننقل الرمز إلى خادم ويب في المستقبل القريب ، لكننا نريد التأكد هذا. إذا كنت لا تزال ترغب في استخدام نظام التشغيل Mac OS ، فأنت مرحب بك للبحث عن وتثبيتE الحزم الضرورية عبر الإنترنت ، ولكن قد لا تكون هناك بدائل لكل حزمة سيغطيها هذا الكتاب أو السلسلة.
دعنا نضيف بعض الأوامر لارتكاب عملنا باستخدام البرنامج النصي الاحتياطي عن طريق تشغيل الأمر succript
# ...
git add –all
git commit -m “backup”
git push -u origin master
مرة أخرى ، السيطرة على X للحفظ.
الآن نحتاج إلى القيام بتكوين مرة واحدة لهذا المشروع. نظرًا لأنه سيكون قريبًا مشروع GIT ، لا نحتاج إلى كتابة كل أمر في كل مرة ننشر فيها من مستودع GIT ، لكننا سنحصل على تعليق هذا عندما نكتب نصوص النشر الخاصة بنا. للبدء ، دعونا نتأكد من أننا في الدليل الصحيح وتهيئة مستودع GIT وإنشاء مفاتيح SSH.
cd /path/to/directory
git init
git branch -m master
ssh-keygen
بعد أن نكتب SSH-Keygen ، يجب حفظ المفتاح الجديد في المجلد المنزلي تحت مجلد يسمى .ssh. ويسمى id_rsa.pub. دعنا نجد هذا المفتاح وننسخه. لرؤيتها ،
cd ~
cat .ssh/id_rsa.pub
انسخ النص الذي يتم إرجاعه بواسطة الأمر الأخير ، وقم بإنشاء حساب مع مزود GIT الخاص بك (من الناحية المثالية github) ، قبل إضافة مفتاح SSH إلى حسابك. بمجرد أن يكون لديك حساب ، انقر فوق القائمة العلوية اليمنى وأدخل الإعدادات ، قبل إضافة مفتاح SSH في مفاتيح SSH و GPG تحت الوصول في القائمة. حدد إضافة مفتاح SSH وأضفك عن طريق لصقه وإعطائه عنوانًا ، قبل حفظه والعودة إلى Github لإنشاء مستودع جديد. هذا مشابه لمقدمي خدمات GIT الآخرين ، ستحتاج إلى قراءة وثائقهم. في تكوين المستودع الجديد ، امنح مستودعك اسمًا وصفيًا وقرر ما إذا كنت تريد نشره ، والتأكد من عدم تكوين أي ملفات لإدراجها حتى الآن. بمجرد إنشاء المستودع ، انسخ Clone باستخدام عنوان URL SSH ، ولصقه في الأمر التالي.
git remote add git://… (your remote URL)
الآن يمكنك العودة إلى مستودعك باستخدام القرص المضغوط ، وستكون على دراية بهذا. جرب البرنامج النصي الاحتياطي الآن مع النسخ الاحتياطي
عظيم! الآن يمكننا حقًا الحصول على الترميز. دعنا نثبت Django الآن بعد أن حصلنا على فهم جيد على Bash و Git. سيسمح لنا Django بتركيب برنامجنا تلقائيًا ، يمكن لـ Bash القيام بذلك أيضًا ، لكن يجب أن يكون لدى Django تطبيق أكثر أمانًا (يمكن تعطيله وتكوينه بسهولة أكبر).
لتثبيت البرامج في Ubuntu ، سنستخدم الأمر sudo apt-get. أولاً ، دعنا نقوم بتحديث وترقية البرنامج الذي كان لدينا بالفعل. يمكن القيام بذلك مع تحديث Sudo APT-GET و Sudo APT-GET UPGRADE -y. بعد ذلك ، دعنا نثبت Python وبيئتنا الافتراضية ، موطن الكود الخاص بنا ، مع الأمر التالي: Sudo APT-GET تثبيت Python-IS-Python3 Python3-Venv
هذا هو كل ما تحتاجه للذهاب مع Django من حيث تثبيت البرامج في مثيل Ubuntu. بالنسبة لنظام التشغيل Windows و Linux ، يجب أن يكون هذا واضحًا إلى حد ما ، ولكن قد ترغب في تثبيت جهاز افتراضي وLinux عليها باستخدام بيئة افتراضية مجانية أو مدفوعة مثل VirtualBox أو Paralells سطح المكتب وإعادة إنشاء الخطوات المذكورة أعلاه من أجل إعداد بيئة Ubuntu. يعد Ubuntu أمرًا بالغ الأهمية في هذه الحالة لأنه البرنامج الذي تقوم به مواقع الويب ويمكّنها من استضافة مواقع الويب مع جميع البرامج المذكورة أعلاه.
دعنا نحفر في Django.
في دليلنا مرة أخرى ، مع
python -m venv venv # يخلق البيئة الافتراضية حيث يتم تخزين الكود
source venv/bin/activate # ينشط البيئة الافتراضية
pip install Django
django-admin startproject mysite . # حيث Mysite هو المشروع الذي أبدأ به في دليلي الحالي.
لقد بدأنا Django للتو ، لأن Django يستضيف خادم الويب ويقوم بكل ما نحتاجه للحصول على موقع ويب محلي أساسي. الآن بعد أن تم تثبيت Django ، دعنا نقوم بتحرير الإعدادات قليلاً لجعلها تعمل كيف نحتاج. أولاً ، دعنا ننشئ تطبيقًا جديدًا
python manage.py startapp feed
ستلاحظ أن التطبيق الأول يسمى التغذية. يجب أن يطلق على التطبيق ما تريد ، وسننشئ تطبيقات جديدة ، ولكن يجب أن يكون اسم كل تطبيق ثابتًا في كل مرة يتم فيها الرجوع إلى التطبيق في الرمز. لإضافة تطبيق جديد ، سنقوم دائمًا بتحرير الإعدادات. قم بالتحديد في الدليل الآخر الذي تم إنشاؤه ، والذي تم إنشاؤه في startProject ، في الآخرة. باستخدام نانو ،
nano app/settings.py
في الإعدادات ، ابحث عن installed_apps وفصل [] إلى 3 أسطر. باستخدام أربع مسافات على خط الوسط الفارغ ، أضف "التغذية" ، أو اسم تطبيقك. يجب أن يبدو هذا القسم من الإعدادات.
INSTALLED_APPS = [
'feed',
]
قبل أن ننسى ، دعونا نختبر أن Django يعمل. باستخدام الأمر Python Manage.py Runserver 0.0.0.0:8000 ، يمكننا تشغيل الخادم ثم التنقل في متصفح ويب على الكمبيوتر الذي يعمل على تشغيل الرمز إلى http: // localhost: 8000 وشاهد مثال على الويب (يعمل!) ترك الخادم مع التحكم C ، مثل أي أمر آخر.
الآن ، دعنا نحفر في كتابة بعض كود بيثون. لدى Django ثلاثة مكونات رئيسية ، وكلها تديرها رمز بالكامل. تسمى المكونات النموذج والعرض والقالب ، وكل منها على مستوى أعلى وأقل على التوالي قبل تسليم صفحة الويب إلى المستخدم.
النموذج هو الرمز الذي يخزن المعلومات في قاعدة البيانات لاسترجاعها وفرزها وتقديمها.
يقرر العرض كيفية تقديم النموذج ومعالجته وتعديله ، وسوف يستخدم كل عرض تقريبًا نموذجًا مباشرة.
القالب هو رمز HTML مع بعض الأجراس والصفارات الإضافية التي تسمى لغة القالب. يتم تقديم القالب من خلال العرض حيث تمتلئ برمز Python وسياق مثل النماذج والمعلومات (أوتار أو أعداد صحيحة) من العرض.
لدى Django مكونات أخرى أيضًا ، بما في ذلك على سبيل المثال لا الحصر:
الإعدادات ، التي تقوم بتكوين التطبيق كما ناقشنا.
عناوين URL ، وهي أنماط يتبعها المستخدم للوصول إلى أجزاء محددة من تطبيق الويب.
النماذج ، التي تحدد كيفية معالجة المعلومات التي يتم إرسالها إلى الخادم وتقديمها إلى قاعدة البيانات وكذلك للمستخدم. هذه هي أساس معالجة المعلومات على جانب الخادم ، ويمكنها قبول أي نوع من المعلومات التي يخزنها الكمبيوتر ، وأبرزها سلاسل النص ، والأرقام ، والطقس الحقيقي/الخاطئ (عادة مربعات الاختيار).
القوالب ، التي هي رمز HTML ولغة القالب وسدّع الفجوة بين Python و HTML ، مما يعني أنه يمكن تقديم معلومات Python كرمز HTML الذي يمكن لأي شخص الوصول إليه ويمكنه تأمين موقع ويب مع وصول مقيد ، مع جعل رمز Python متاحًا إلى الويب والمفيد لمجموعة متنوعة من الأغراض على جهاز بعيد لاeed لتكون بالقرب من الخادم.
الملفات الثابتة ، والتي عادة ما تكون JavaScript ومكتباتها التي يخدمها الخادم وترتبط بها القالب.
ملفات الوسائط ، التي يقدمها الخادم أو يتم استضافتها خارجيًا ، أو مكتوبة للتو إلى الخادم قبل معالجتها ونشرها على خادم آخر (دلو) للاستضافة.
الوسيطة ، وهي أجزاء من التعليمات البرمجية التي يتم تشغيلها في نفس الوقت مثل كل عرض وتعتبر "مدرجة" في العرض.
معالجات السياق ، التي تقوم بمعالجة سياق كل طريقة عرض وتستخدم لإضافة سياق إضافي.
الاختبارات ، التي تؤكد أن المستخدم أو الطلب يمرر متطلبات معينة قبل تقديم العرض.
المستهلكون ، الذي يملي كيف تتعامل WebSockets للاتصالات والاستجابة لها.
المسؤول ، الذي يتم استخدامه لتسجيل النماذج بحيث يمكن معالجتها بالتفصيل في صفحة مسؤول Django ، حيث يمكن إعطاء قاعدة البيانات من خلال واجهة رسومية.
الكرفس ، الذي يحدد المهام غير المتزامنة يمكن أن تبدأ أجزاء من رمز DjangoNning قبل الانتقال فورًا إلى المهمة التالية أو سطر الكود.
يمكن أن يكون لدى Django العديد من المكونات الأخرى ، والتي سنناقشها بالتفصيل هنا. هناك الكثير من الطرق لجعل Django أكثر وظيفية ، وإضافة Websockets ، وهي قنوات اتصال سريعة وتبسيط ، والكرفس ، والتي تنفذ المهام غير المتزامنة ، وعدد كبير من البرامج الأخرى لتمديد Django ، وخاصة في وظائف العرض ، حيث معظمها يتم تنفيذ الرمز. تعتبر وظائف العرض مفتاحًا لأنها عادة ما تعلن كل جزء من التعليمات البرمجية المخصصة لنمط عنوان URL محدد ، أو قسم من الخادم.
أولاً ، دعنا نستكشف وظائف العرض. تبدأ وظائف العرض بالواردات التي تشير إلى الكود الذي سيتم استخدامه في العرض ، ويتم تعريفه باستخدام تعريفات أو فئات الوظائف العادية. يتم تعريف أبسط المشاهدات بواسطة DEF تعريف الوظيفة ، وإرجاع httpresponse باستخدام قالب أساسي. لنبدأ بتحديد طريقة عرض أساسية لإرجاع النص "Hello World". تذكر أنه في كل مرة تضيفقم بتوضيح بيان مثل DEF ، إذا ، على الرغم من ذلك ، إلخ ، ستحتاج إلى إضافة 4 مسافات لكل من التعريفات السابقة التي ترغب في تطبيقها على وظيفتك. سوف ندخل في ما يعنيه كل من هذه قريبًا.
من دليل موقعنا ، قم بتحرير ملف التغذية/views.py باستخدام nano وأضف الأسطر التالية إلى نهاية
from django.http import HttpResponse
def hello(request):
return HttpResponse('hello world')
يستجيب HttPresponse من Django بسلسلة نصية ، يُشار إليها بالافتتاح والإغلاق. في كل مرة تقوم فيها بتمرير معلومات إلى وظيفة أو فئة ، مثل الطلب أو السلسلة ، ستحتاج إلى استخدام قوسين (وفتح وإغلاق).
هذا ليس كل ما نحتاجه لرؤية وجهة نظرنا بعد. بالطبع ، لم نخبر الخادم عن مكان العرض بالضبط ، ما زلنا بحاجة إلى تحديد مسار يجب من خلاله عرض العرض. لنبدأ بتحديد مسار أساسي في app/urls.py ، وسنصل إلى مجموعات المسار لاحقًا.
في App/urls.py ، أضف خطًا بعد بيانات الاستيراد بعد بداية استيراد العرض الذي أنشأناه للتو.
from feed import views as feed_views
الآن ، دعنا نحدد نمط العرض. تحتوي أنماط العرض على ثلاثة مكونات ، وهو مكون المسار ، والذي يخبر الخادم حيث يوجد العرض داخل الخادم (مسار عنوان URL الذي يكتبه المستخدم في شريط التنقل للدخول إلى صفحة الويب) ، ومكون العرض حيث يتم تحديد العرض ، و اسم ودود للعرض بحيث يكون من السهل استرداد نمطه عند العمل مع قالب ، خاصة بحيث يمكن تغيير اسمه وتحديثه إذا لزم الأمر لتوفير مساحة لعرض آخر أو الاستمتاع باسم أكثر منطقية. من المنطقي القيام بالأشياء بهذه الطريقة وأن تكون مرنًا ، لأن قاعدة بيانات الكود ستكون بيئة متغيرة باستمرار تحتاج إلى المرونة والارتجال من أجل أن تكون ذات قيمة وسهلة العمل معها. إليك ما سيبدو عليه عرضك ، يمكنك إضافة هذا إلى urlpatterns = [قسم App/urls.py. يتم تعريف نمط العرض مع المكونات الثلاثة الموضحة أعلاه ، ودالة تسمى المسار. أنماط عنوان URL الخاص بك هي قائمة ، لذا تأكد دائمًا من إنهاء كل عنصر فيهامع فاصلة ، لأن هذا يفصل كل واحد. يجب أن يذهب كل عنصر أيضًا على سطر جديد ، مرة أخرى مع أربعة مسافات قبله ، تمامًا مثل التطبيق في الإعدادات. سنقوم بتحديد المكون الأول من العرض بوظيفة سلسلة فارغة ، من أجل إنشاء طريقة عرض يتم تشغيلها على الدليل الجذر لخادم الويب. يجب أن يبدو عنوان urls.py الخاص بك الآن
from feed import views as feed_views
urlpatterns = [
path('', feed_views.hello, name='hello'),
]
هذا هو الأساس لإنشاء موقع ويب مع Django ثابت تمامًا. من أجل إنشاء موقع ويب أكثر ديناميكية حيث يمكننا البدء في تخزين المعلومات ، مثل الصور ومقاطع الفيديو والصوت والمزيد ، سنحتاج إلى استخدام النماذج ، والتي سنستكشفها بعد ذلك. في الوقت الحالي ، دعنا نتحقق من التعليمات البرمجية الخاصة بنا وتشغيل الخادم. للتحقق من رمز الأخطاء ، قم بتشغيل:
python manage.py check
إذا كان هناك أي رسائل خطأ ، فيجب عليك مراجعة التغييرات التي أجريتها على تطبيقك بعناية ومعرفة ما إذا كان هناك أي شيء يجب إصلاحه ، مثل الفضاء الغريب أو الذي يفتقر إليه حذف الشخصية ، أو أي شيء آخر. عند قراءة رسالة الخطأ (إذا كان لديك واحد) ، يجب أن تكون قادرًا على رؤية المسار إلى ملف قمت بإنشائه أو تم تحريره مع رقم سطر ، لذا ابحث في هذا الملف والخط ومعرفة ما إذا كان يمكنك إصلاح أي شيء موجود . إذا كنت قد قمت بإصلاح المشكلة ، فقم بتشغيل الأمر أعلاه مرة أخرى. عندما يكون برنامجك جاهزًا للتشغيل ويعمل ، سترى الإخراج "تحقق من عدم تحديد أي مشكلات". أنت الآن مستعد للذهاب. قم بتشغيل الخادم مع:
python manage.py runserver 0.0.0.0:8000
افتح الآن متصفح الويب وانتقل إلى http: // localhost: 8000. يجب أن ترى النص الذي يتم إرجاعه في قوسين واقتباسات وظيفة httpresponse في عرضك. هذا مجرد مثال أساسي ، ولكن إذا وصلت إلى هذا الحد ، فأنت تفهم أساسيات كيفية عمل Linux و Bash و Python و Django. دعنا نتعمق في بعض نمذجة قاعدة البيانات ، واستكشف قوة فئة Python في تخزين المعلومات. بعد ذلك ، سنبدأ في الحصول على قبضة على HTML و CSS قبل أن نجعل موقعنا مميزًا تمامًا ومرنًا وآمنًا باستخدام JavaScript والتعلم الآلي.
يتم تخزين الفصول في الطرز. باستخدام nano ، تحرير التطبيق/models.py وأضف فئة جديدة. يتم تعريف الفئة مع تعريف الفئة ويتم تمريرها فائقة ترثها ، في هذه الحالة على طراز. يأتي اسم الفصل بعد تعريف الفئة ، وبعد استخدام تعريف الفئة A: (القولون) ، قبل الإشارة إلى السمات وتعريفات الوظائف المرتبطة بالفئة أدناه. صفنايحتاج إلى معرف يمكننا استخدامه لاسترداده والحفاظ عليه فريدًا ، ويحتاج أيضًا إلى حقل نص لتخزين بعض المعلومات. في وقت لاحق ، يمكننا إضافة طابع زمني أو ملفات أو منطقية (تعاريف حقيقية أو خاطئة يمكن أن تساعد الكود لدينا في اتخاذ قرارات بشأن ما يجب القيام به مع النموذج ، ويمكن استخدامه لفرزه) ، وهو مثيل لربط النموذج مع المستخدم المسجل في الخادم ، وأكثر من ذلك. دعونا نفشل الرمز
from django.db import models # الاستيراد المستخدم لتحديد صفنا وسماتها
class Post(models.Model): # تعريف فصلنا نفسه
id = models.AutoField(primary_key=True) # معرف نموذجنا ، وهو مفتاح تم إنشاؤه تلقائيًا يتيح لنا الاستعلام عن النموذج ، والحفاظ عليه فريدًا ، وهو مفيد عندما نحتاج إلى التفاعل مع النموذج بمجرد إنشاءه.
text = models.TextField(default='') # السمة المتاجر الخاصة بنا ، في هذه الحالة ، بعض النصوص ، تتخلف عن سلسلة فارغة.
أغلق وحفظ الملف كما فعلنا من قبل لإنهاء.
هناك العديد من الحقول والخيارات الأخرى التي سنستكشفها عندما نقوم بتحديث هذه الفئة مع تطور تطبيقنا ، ولكن هذه هي الضروريات الأساسية لإنشاء تطبيق لنشر بعض النص. ومع ذلك ، لن يعمل هذا النموذج بمفرده. كما هو موضح من قبل ، سنحتاج إلى عرض مخصص ونمط عنوان URL المخصص لجعل هذا النموذج يعمل ، وسنحتاج أيضًا إلى نموذج مع قالب. دعونا نستكشف النموذج أولاً.
لتحديد نموذج ، تحرير التطبيق/forms.py مع nano وأضف الأسطر التالية. سنحتاج إلى اثنين من الواردات ، فئة النماذج الخاصة بنا ، وكذلك النموذج الذي أنشأناه (feed.models.post) ، وتعريف فئة مشابه للنموذج ، وحقل جنبًا إلى جنب مع. يمكن أن يكون للنموذج أيضًا وظيفة تهيئة تضعها بناءً على المعلومات في الطلب أو النموذج أو غير ذلك ، وسنستكشف هذا لاحقًا.
نماذج النماذج مفيدة للغاية لأنها يمكنها إنشاء نموذج أو أيضًا تحرير نموذج ،لذلك سوف نستخدمها لكليهما. دعونا نحدد واحدة في forms.py
from django import forms
from feed.models import Post
class PostForm(forms.ModelForm):
text = forms.CharField(widget=forms.Textarea)
class Meta:
model = Post
fields = ('text',)
هذه هي أساسيات شكل النموذج والنموذج. يمكن استخدام نموذج النموذج هذا لإنشاء إنشاء منشور أو تحريره ، وتغيير النص الذي يحتوي عليه. سننظر في دمج هذا النموذج في عرض التالي. أولاً ، دعنا نجعل الترحيل ونقلل قاعدة البيانات حتى يتمكن الكود لدينا من التفاعل مع النموذج عند تشغيله. للقيام بذلك ، قم بتشغيل الأوامر التالية:
python manage.py makemigrations
python manage.py migrate
سيستغرق التنفيذ دقيقة واحدة ، ولكن بمجرد قيامه بذلك ، سيسمح لك بالوصول إلى النموذج في طرق العرض أو الوسيطة أو في أي مكان آخر في البرنامج. دعنا نستمر من خلال إلقاء نظرة على حيث يمكننا رؤية نموذجنا. تحرير التغذية/views.py وأضف الكود التالي ، كما لوحظ. لن تحتاج إلى إضافة أي شيء بعد علامة # ، هذا الرمز هو التعليقات المستخدمة للدلالة على معلومات حول الرمز. سنبدأ باستيراد نموذجنا في طرق العرض ، وإضافته إلى سياق يمكننا فيه تقديمه في قالب كقائمة للعرض. بعد ذلك ، سنضيف قالبًا حيث يمكننا تقديم النموذج والنموذج باستخدام زر لإنشاء كائن جديد استنادًا إلى النموذج ونشره إلى الخادم. هذا يبدو معقدًا ، لذلك دعونا نأخذ الأمر خطوة بخطوة. قبل أن ننتهي من العرض ، دعنا ننشئ قالبًا يجعل النموذج فقط والتأكد من أننا نستطيع رؤيته عن طريق إنشاء منشور جديد في القشرة. إليك كيف يجب أن يبدو هذا الرأي:
from feed.models import Post
from django.shortcuts import render, redirect
from django.urls import reverse
def feed(request):
posts = Post.objects.all() # الاستعلام عن جميع المنشورات في قاعدة البيانات حتى الآن
return render(request, 'feed/feed.html', {
'posts': posts,
})
كل هذا يبدو بسيطًا جدًا حتى نصل إلى الأسفل. التقديم ، القيمة التي يتم إرجاعها بواسطة الوظيفة بدلاً من استجابة HTTP مثل المثال السابق ، تأخذ دائمًا طلبًا كأول إدخال لها ، تقبل سياقًا (في هذه الحالة المشاركات في قاعدة البيانات) ، والتي يمكن تقديمها الآن في القالب ، ويعيد القالب المحدد في الوظيفة. سيكون القالب مستند HTML مع القليل من لغة تسمى Jinja2 ، والتي تجعل معلومات Python في HTML.
للبدء في إنشاء قوالب ، قم بعمل دليلين في التغذية.
mkdir feed/templates
mkdir feed/templates/feed
بعد ذلك ، قم بتحرير قالب في الدليل أعلاه ، وتغذية/قوالب/تغذية ، وأضف الكود لهذا المثال. دعونا نلقي نظرة على القالب لهذا المثال.
<!doctype HTML>
<html>
<body>
<legend>Feed</legend>
<hr>
{% for post in posts %}
<p>{{ post.text }}</p>
{% endfor %}
</body>
</html>
هذا قالب بسيط للغاية. إنه يحدد فتح وإغلاق علامات HTML ، وعلامة نوع المستند ، وعلامة الجسم بعنوان أسطورة ، وعلامة كسر تضيف سطرًا صغيرًا عبر الشاشة ، وحلقة تجعل كل منشور في قائمة المنشورات كفقرة في الفقرة القالب. هذا كل ما يتطلبه الأمر لتقديم المنشورات ، ولكن لا يوجد شيء في قاعدة البيانات حتى الآن. دعنا ننشئ بعضًا مع القشرة. يمكننا تشغيل القشرة باستخدام manage.py
python manage.py shell
الآن ، دعنا نستورد نموذج منشورنا
from feed.models import Post
بعد ذلك ، سنقوم بإنشاء منشور بسيط مع سلسلة ونخرج من القشرة. يمكن أن تكون السلسلة أي شيء ، طالما أنه نص صالح.
Post.objects.create(text='hello world')
exit()
أخيرًا ، سنحتاج إلى إضافة نمط عنوان URL إلى خلاصتنا. نظرًا لأن تطبيق التغذية الخاص بنا سيستخدم عناوين URL متعددة ونريد الاحتفاظ بأحجام الملفات الصغيرة ، فلنقوم بإنشاء عنوان urls.py محلي في تطبيق التغذية الخاص بنا يبدو:
from django.urls import path
from . import views
urlpatterns = [
path('', views.feed, name='feed'),
]
سنحتاج أيضًا إلى تحرير urls.py في التطبيق الأساسي ، كل ما قررنا أن نسميه ، كان هذا هو الدليل الأول الذي أنشأناه. تحرير التطبيق/app.py وأضف ما يلي إلى أنماط عنوان URL
from django.urls import include # في الأعلى
urlpatterns = [
# ... الرمز السابق هنا
path('feed/', include(('feed.urls'), namespace='feed')),
]
الآن ، عندما نقوم بتشغيل الخادم باستخدام Python Manage.py Runserver ، سنرى الصفحة التي أنشأناها لأن لدينا النموذج والعرض والقالب وكذلك نمط عنوان URL ، إلى جانب العناصر الموجودة في قاعدة البيانات. بعد ذلك ، دعنا ننفذ النموذج الذي أنشأناه ويبدأ في إنشاء مشاركاتنا الخاصة. ولكن قبل أن نكتب الكثير من التعليمات البرمجية ، دعنا نقوم بعمل نسخة احتياطية باستخدام البرنامج النصي الذي كتبناه سابقًا ، نسخة احتياطية. قم بتشغيل هذا البرنامج النصي في القشرة ، وانتظر بضع لحظات ، وسيتم نسخ جميع الكود إلى مستودع GIT الخاص بنا.
backup
تنفيذ النموذج بسيط نسبيا. سنقوم باستيراد نموذجنا ، وإضافة معالج طلب نشر إلى العرض ، وحفظ المنشور في قاعدة البيانات قبل إعادة توجيه العرض نفسه. يمكننا استخدام وظيفة إعادة التوجيه التي قمنا باستيرادها بالفعل ، ودالة أخرى تسمى العكس للحصول على عنوان URL لنمط العرض. سنقوم بالاستعلام عن هذا باستخدام سلسلة "التغذية: التغذية" لأن مساحة اسم النمط المضمّن هي تغذية ، ويسمى العرض أيضًا التغذية.
from feed.forms import PostForm
def feed(request):
posts = Post.objects.all() # الاستعلام عن جميع المنشورات في قاعدة البيانات حتى الآن
if request.method == 'POST': # التعامل مع طلب النشر
form = PostForm(request.POST) # قم بإنشاء مثيل للنموذج وحفظ البيانات إليه
if form.is_valid(): # التحقق من صحة النموذج
form.save() # حفظ الكائن الجديد
return redirect(reverse('feed:feed')) # أعد التوجيه إلى عنوان URL نفسه مع طلب الحصول على
return render(request, 'feed/feed.html', {
'form': PostForm(), # تأكد من تمرير النموذج إلى السياق حتى نتمكن من تقديمه.
'posts': posts,
})
الآن ، سنحتاج إلى تحديث القالب لحساب النموذج الجديد. يمكننا القيام بذلك باستخدام
https://glamgirlx.com/ar/practical-web-based-deep
https://glamgirlx.com/ar/practical-web-based-deep -
اترك لي نصيحة في البيتكوين باستخدام هذا العنوان: 3KhDWoSve2N627RiW8grj6XrsoPT7d6qyE
© Glam Girl X 2025