مبتدئ التدريس الذاتي بيثون ، ماذا يجب أن يكون التعلم ؟ [مغلقة]

StackOverflow https://stackoverflow.com/questions/805720

  •  03-07-2019
  •  | 
  •  

سؤال

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

أود أن تعلم بايثون.أنا أيضا ذاهب لبناء PC الثاني من أجزاء إضافية يجب استخدام لينكس.في الأساس أنا أريد لتعزيز المعرفة من أجهزة الكمبيوتر.هذا الدافع.

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

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

أنا لا أبحث عن تعلم في "30 يوما" أو "1 أسبوع" أو أيا كان.وذلك ابتداء من مستوى أساسي جدا ما يرام معي.

شكرا مقدما.أنا عملت بحث و لم أجد ما كنت أبحث عنه.

تحديث:شكرا على كل النصائح كبيرة.لقد وجدت هذا الموقع في العمل و لا يمكن العثور عليه على جهاز الكمبيوتر الخاص بي لذلك أنا مجرد الحصول على قراءة الآن.

هل كانت مفيدة؟

المحلول

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

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

إذا كنت تبحث أن يكون عقلك تحولت من الداخل إلى الخارج، <وأ href = "http://mitpress.mit.edu/sicp/full-text/book/book.html" يختلط = "نوفولو noreferrer" > SICP سوف يقوم بعمل جيد منه. أنا لا أوصي به باعتباره النص الأول، على الرغم؛ انها كبير و عميق.

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

وD'A

نصائح أخرى

http://www.pythonchallenge.com/

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

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

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

وأنت قد ذكرت أنك كنت غير متأكد من فهم المواد للدرجة التي اتخذت. إذا كنت تشعر أنك لا تفهم المفاهيم الأساسية (مثل الحلقات، والطبقات، وما إلى ذلك)، ثم تعلم سوف بيثون مساعدة فهمك للبرمجة حيث أن معظم الكتب / أدلة إعادة نظر هذه المفاهيم (<م> التعلم بيثون، 3 الطبعة ينبغي أن يساعد مع هذا). إذا فهمت هذه المفاهيم، ولكن كنت غير متأكد من كيفية تطبيق هذه المفاهيم، ثم توصيتي سيكون لمعرفة المزيد عن هياكل البيانات والخوارزميات المشتركة (فرز على سبيل المثال، والبحث، الخ).

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

لمعرفة المزيد عن أنواع مختلفة من هياكل البيانات، انظر: <لأ href = " http://en.wikipedia.org/wiki/List_of_data_structures "يختلط =" noreferrer نوفولو "> http://en.wikipedia.org/wiki/List_of_data_structures . عادة، كل بنية بيانات مفيدة لغرض معين (مثل أشجار البحث الثنائية جيدة للبحث عن معلومات مرتبة). لسوء الحظ، ليس لدي أي توصيات الكتاب (لم طبقتنا عدم استخدام كتاب). يجب غوغلينغ "تراكيب البيانات" يكون نقطة انطلاق جيدة.

حصل

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

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

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

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

إذا كان لديك أي أسئلة أخرى، لا تتردد في طرحها. حظا سعيدا!

وبايثون هي لغة عالية المستوى، لذلك لن تعطيك الكثير من المنافع المباشرة لمعرفة كيفية تعمل أجهزة الكمبيوتر في أدنى المستويات.

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

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

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

والمتعة!

وأود أن أقترح النظر في الكتاب على الانترنت في http://www.diveintopython.org/ ل تعلم الثعبان.

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

<اقتباس فقرة>   

وتعزيز معرفتي أجهزة الكمبيوتر

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

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

الجواب القصير: كل منهم

الجواب طويل:

تعلم لغتك الأولى هو دائما تحديا ، وبعد جافا الخاص بك تجربة الكثير من اللغات الأخرى سوف يبدو أسهل كثيرا.وقال أن التحدي الحقيقي في تعلم لغات البرمجة هو التعلم عند استخدام لغة معينة-يمكنك العثور على كريمة مستندات لكل ما اخترت عندما يحين الوقت.

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

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

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

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

منذ أن الثعبان لم يكن أول لغة, وجدت بيثون طبخ مفيدة للتعلم

  1. ما كان الثعبان قادر على
  2. على الاصطلاحية ، "pythonic" الطريق إلى لا شيء.

البرمجة تعليم اللغة كانت دائما مرتبطة مبتذلة بيان أثناء التعلم."كتابة برامج لتعلم البرمجة".أنا أيضا أقترح نفس.

إذا كنت تنوي أن تبدأ من الأساسيات.هذا هو بالطبع الأكثر اقترح نقطة البداية.أنها طويلة ولكن الأمر يستحق كل وقت. http://www.diveintopython.org/

لأنك في بعض جافا, هذا قد يكون أفضل بالنسبة لك. http://www.swaroopch.com/notes/Python.تبدأ إما بيثون 2.x أو 3.0.أنا شخصيا معجب بيثون 3.ولكن كاتب يمكن أن يكون من الصعب الحصول على عينات والمراجع البرامج على الانترنت.لذلك بالنسبة لك 2.× قد يكون أفضل.ولكن أترك الأمر بيدك.

كما بدأت "كتابة البرامج..".يمكنك أن تبدأ من هنا.

  1. http://www.spoj.pl/ - البرمجة التحديات الموقع, حيث يمكنك الاختيار من بين مجموعة واسعة من المواضيع في الغالب خوارزميات ضخمة السؤال قاعدة البيانات الخاصة بنا.بالطبع اختيار لغات البرمجة تصل لك.
  2. http://projecteuler.net/ - رياضي أسئلة الموقع ، هنا عليك فقط أن يقدم جوابا ، الغش مسموح به هنا ، حتى تكون حرة في الاقتراض المنطق من الآخرين, ولكن في محاولة كتابة البرنامج بنفسك.

بعد كنت تعتقد أن كنت قد اكتسبت ما يكفي الكفاءة في بيثون ، يمكنك أن تجرب وصفات في هذا الكتاب الثعبان طبخ http://www.amazon.com/Python-Cookbook-Alex-Martelli/dp/0596007973.

لتطوير التطبيق ، بعد أن كنت تعتقد أنك يمكن التعامل معها على wxPython أو PyQt.أنا شخصيا أقترح PyQt.هو سريع الاستجابة, و قد لائق دورة تطوير, أنا لم تستخدم WxPython لفترة طويلة ، ولكن بعض البرامج التي أنا كتبتها طويلة إلى الوراء ، لم أشعر بحالة جيدة.مرة أخرى لتصل لك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top