للمبرمجين، ما هي مهارات البرمجة الحقيقية؟

0: يقدر تماما مشكلة وإعطاء رمز المقابلة.

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

على سبيل المثال، في الآونة الأخيرة إلى STLC AST تصبح المشاركة الصريحة من المهام من تقاسم ضمني، التي تعتمد على LCA + توبو العكسي حساب التبعية (لم يتبع هذه الخطوة الأجل الوقت نطاق LCA معا إعادة ترتيب، وببساطة لا يمكن أن تجعل)، وربط أخيرا Metaocaml letlist النمط، زرر.

في بعض الأحيان، لا يوجد أي API، يتم تغيير الطلب من واحد إلى خوارزمية أخرى. على سبيل المثال، D * خوارزمية التعقيد هو O (نيفادا ^ 3)، انها ليست جيدة، وأنا أريد لتحسين المقبل، نزول إلى تعقيد هذه النقطة، التي ليست هي نفسها كما أي صفقة يمكن تعديلها.

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

الاسم الذي يحظى باحترام جدا "فهم، كسر، كسر" هذا الكتاب SICP الروتينية، وجائزة تورينج إدوارد ديكسترا المزيد من التطرف، أن هذا الأسلوب هو الأسلوب الوحيد للبرمجة. إذا كان هذا ليس هو الوسيلة الوحيدة، وهذه القدرة هي المهارات الأساسية الضرورية جدا.

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

1: يمكن إضافة أساليب الهندسة على 0.

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

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

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

كيفية تصميم؟ كيفية إعادة بناء؟ شاشي هوى اعادة الاعمار ولكن ليس ضد الدين مواصلة التحرك إلى الأمام (أو لن يجعل الأمور إعادة التشكيل بلا حدود المستقبل)؟ هذا الاستخدام ما التكنولوجيا؟ كيفية اختيار بين مجموعة متنوعة من المقايضة؟ إلى جانب اختبار مصحح / وحدة اختبار / CI / جيت / تكامل هذه أداة.

2: لديك فهم جيد للكمبيوتر كامل المكدس، مختلطة مع مجموعة متنوعة من المهارات يمكن أن تقوم به

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

ثم، وسوف تعلم ديب، وجدت الجواب هو ليس بالضرورة حق، ولكن عندما ارشادي / تلميح والأساليب التقليدية لتسريع (Alphago من MCTS (AI)، وهناك هو أن (قاعدة بيانات تعلم المفهرسة النتائج التنبؤ الهيكل)، AutoTVM من تصنيفات السريعة (مترجم)، DeepCoder لحد من فضاء البحث (برنامج التجميعي)، بلوتون للتنبؤ قاعدة بيانات الحمولة (قاعدة بيانات))

أو، سوف FPGA، ونعرف أن هناك الكثير من الفضاء الأمثل على GPU، ثم مباشرة إلى كامل الدوائر مصفوفة ضرب فيوز (TPU)، أو أنها سوف تكميم، لدراسة كيفية القيام الكم NN ASIC (بت فيوجن).

سيكون هناك PL، والعثور ديب التعلم في الحساب الرسم البياني هو في الواقع من الدرجة الأولى PL، من أجل الانضمام إلى تدفق التحكم (RNN / LSTM / TreeLSTM) ليقوم امدا مكعب على IR تصميم، والتفكير في كيفية القيام يعود انتشار أعلاه لل القيام الأمثل برنامج (التقوية على TVM).

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

علمت الذاكرة التسلسل الهرمي في وقت لاحق، مع ذاكرة قبل أن تتمكن من جلب مقدما، والحد من برنامج ذاكرة الوصول الكمون (الجلب)

إذا كان FPGA، ويمكن أن تكون جزءا من هذه المهمة جدولة إلغاء تحميل الأجهزة لتحسين الأداء (الأجهزة / البرمجيات Codesign)

عامل الميناء مهمة لديك لتشغيل الداخل؟ منذ عامل الميناء على الحماية، وهذا أيضا لماذا بحق الجحيم لتشغيل OS الوضع المحمي، مساحة عنوان متعددة لتشغيل والحفاظ على نواة / المستخدم؟ Unikernel ذهاب اللعب!

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

3: CS & المعرفة الرياضية لا يفهم يمكن أن تملأ بسرعة في مواجهة.

علوم الحاسوب واسع جدا جدا، الأمور لم تعلم اجه أمر طبيعي، وبالتالي فإن القدرة على الكلام في بعض من هو: فإن التعريف لا يجد في قانون / ورقة، وكيفية تعلم في أقصر وقت / تخطي، لا يؤثر على متابعة فهم / التصحيح؟

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

ويعتقد أن هذه لم تفشل مع مرور الوقت، لا يمكن استبدال العمل اليدوي + حزمة نقل، وقدرات البرمجة الحقيقية:

باستمرار توسيع الأدوات الخاصة بهم، وأكثر من ذلك أو أقل يكون أداة خاصة بهم لفهم جوهر. (آلة التعلم / GPU البرمجة)

وفقا لفهمهم لهذه الأدوات، من أجل التوصل إلى طريقة تركيبة جديدة. (ديب التعلم)

فكرته الخاصة لبناء نظام معقد، واسع وشامل، وليس مجرد لعبة. (Pytorch)

صغيرة لتنفيذ وظيفة من الزمن، من خلال قوة الحوسبة، من خلال الطعم، وتصميم وسيلة سهلة لاستخدام API، لكتابة التنفيذ الصحيح والفعال. (عكس التفاضل الوضع التلقائي)

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

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

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

300 متر تحت الأرض! إصلاح لضمان تحقيق السلامة قبل عطلة

فندق ماكاو، أمر 30 رولز-رويس فانتوم: أين هو الديكور ذهبيتين

7 سنوات من الجهة الخلفية ألعاب جافا، تم القضاء على التاريخ المرير

أوركسترا | بيرنشتاين 100 سنة: تفكيك جدران الموسيقى الكلاسيكية

ووهان بناء 100 الإبداعية للمجتمع

يجب أن الإيطاليين يفضلون تحمل آلام الظهر يتمتع السعادة - الفينيل السجلات

مبرمج مع العاطفة: تخرج عامين إلى العمل الإضافي لمدة عامين، والمزمنة، والنفايات

HP Biechu تكتيكات جديدة، وهذه المرة على قليلا طويل القامة

التي تفعل النار الخيال منها: صافي اللعب، الذي هو جزء لا يتجزأ من اختطاف الجذر IP

المسلسلات التلفزيونية الإيطالية "قه مولا" في الربع الثالث 17 نوفمبر إطلاق

أعدت علي بابا عشاء مزدوج 11 للمبرمج ، ركعت باسم الطبق

Koshien مكشطة الدم، البيسبول بالضبط ما هو جذب؟