أمثلة على برمجة Tcl والبرامج التعليمية والمزيد

إفشاء: يساعدك دعمك في الحفاظ على تشغيل الموقع! نحصل على رسوم إحالة لبعض الخدمات التي نوصي بها في هذه الصفحة.


Tcl ، أو “Tool Command Language” (ولفظ “Tickle”) ، هي لغة برمجة نصية مطبوعة ديناميكيًا تم اختراعها في الأصل في أواخر الثمانينيات. غالبًا ما يتم استخدامه للنماذج الأولية والأنظمة المدمجة ، ولكنه قادر تمامًا بما يكفي لاستخدامه في التطبيقات واسعة النطاق. تأثرت ، ولديها بعض أوجه التشابه مع Lisp.

Tk هي مجموعة أدوات واجهة المستخدم الرسومية وثيقة الصلة. وهو امتداد لـ Tcl ، ولكنه متاح الآن للاستخدام مع العديد من اللغات الأخرى.

تم إنشاء Tcl و Tk من قبل نفس المبرمج ، وكثيرا ما تستخدم كما لو كانت مكونات أداة واحدة. حتى أنهم يشاركون أرقام الإصدار. عادة ما يشار إليها معًا باسم “Tcl / Tk” وهي تقنية قوية للتطور السريع.

حول لغة Tcl

Tcl هي لغة مثيرة للاهتمام. لديها عدد من الميزات غير العادية إلى حد ما ، مقارنة بلغات البرمجة الأخرى.

لا يحتوي Tcl على كلمات محجوزة أو هياكل تحكم. هياكل التحكم مثل “for” و “if” هي أوامر في الواقع. يمكن تجاوز الأوامر في Tcl أو إعادة تعريفها ، لذا يمكن للمبرمج تغيير معنى كلمة “for” (أو أي لغة أخرى) في البرنامج. في حين أن هذا لا ينصح به عادةً ، إلا أنه قوي جدًا.

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

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

بناء الجملة

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

# هذا تعليق. تبدأ التعليقات بعلامة التجزئة.

# أمر بسيط للغاية لطباعة الكلمة "مرحبا"
يضع مرحبًا

# ولكن إذا أردنا أن نقول "مرحبا بالعالم"
يضع {مرحبا بالعالم}

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

حتى هياكل التحكم التي تبدو معقدة تعمل بهذه الطريقة. خذ بعين الاعتبار ما يلي:

إذا {$ a == 1} {puts {Hello، World}} {puts {Goodbye، cruel world! }}

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

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

# إنشاء إجراءين جديدين
proc proc {} {puts {Hello، world! }}
بروك وداعا {} {وضع {وداعا ، العالم القاسي!}

# شرطي بدون أقواس متعرجة
إذا كان وداعا مرحبا

إلى جانب الأقواس المتعرجة ، يوجد رمزان إضافيان لـ “التجميع”: علامات اقتباس مزدوجة وأقواس مربعة.

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

# تعيين "العالمية" إلى المتغير
تعيين عالم

يضع $ a
# العالمية

يضع {مرحبًا $ a}
# مرحبًا $ a

يضع "مرحبا $ أ"
# مرحبا بالعالم

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

يضع [expr {1 + 1}]
# 2

# بروك سخيفة ترجع السلسلة "يضع"
proc proc_puts {} {return puts}

# تصبح قيمة الإرجاع أمرًا
[return_puts] [expr {1 + 1}]
# 2

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

# تعيين سلسلة "يضع {هذه سلسلة}" إلى فو
set foo {puts {this is a string}}

$ foo
# هذه سلسلة

يضع $ foo
# يضع {هذه سلسلة}

كما ترون ، Tcl مرن للغاية.

دروس Tcl

  • البرنامج التعليمي الرسمي لـ Tcl هو أفضل مكان للبدء.
  • برنامج Tcl التعليمي مخصص للمبتدئين ؛
  • Tcl / Tk Tutorial في Tutorials Point منهجية للغاية ، وتتضمن مترجمًا عبر الإنترنت حتى تتمكن من البدء في استخدام Tcl على الفور ؛
  • TCLWISE هي الفصول التسعة الأولى من كتاب عن اللغة ، وهي متاحة مجانًا عبر الإنترنت ؛
  • البرمجة في Tcl هي دورة فيديو مكونة من 29 جزءًا مع روح الدعابة ؛
  • Tcl Tutref هو دليل تعليمي ومرجعي مصمم ليكون “رأيًا ثانيًا” في وثائق Tcl الرسمية ؛
  • تعلّم Tcl للشباب المراهقين والشباب القائمين على استخدام Tcl لبناء ألعاب الكمبيوتر ؛
  • إذا كنت تبحث عن دورة دراسية كاملة في الغالب على Tcl ، فجرّبها على ويكي Tcl الرسمي:
    • بداية Tcl ؛
    • وسيط Tcl ؛
    • متقدم Tcl.

كتب عن Tcl / Tk

  • البرمجة العملية في Tcl و Tk (2003) من قبل Welch and Jones هو كتاب دراسي موثوق عن كل من Tcl و Tk ، مع تغطية متعمقة كافية لإرضاء حتى المبرمجين ذوي الخبرة القادمين من لغات أخرى ؛
  • Tcl / Tk، Second Edition: A Developer’s Guide (2003) من تأليف Clif Flynt هو كتاب عملي للغاية يغطي كل من اللغة وأيضًا النظام البيئي للتطوير ، مع تغطية محددة للأدوات والإضافات الشائعة الاستخدام وممارسات التطوير ؛
  • Tcl و Tk Toolkit (2009) من إعداد Oesterhout and Jones هو الدليل النهائي على اللغة ، وشارك في تأليفه مخترعها ؛
  • يوفر Tcl / Tk 8.5 Programming Cookbook (2011) بواسطة Bert Wheeler عددًا من الحلول العملية للمشكلات الشائعة في برمجة Tcl / Tk.

المعارف التقليدية – مجموعة أدوات واجهة المستخدم الرسومية ل Tcl

هناك الكثير من الأسباب التي جعلت Tcl شائعة عندما فعلت ذلك ، ولكن ربما تكون Tk هي الأكثر أهمية. المعارف التقليدية قصيرة تاوولكعليه. يجعل من السهل إنشاء واجهات مستخدم رسومية (GUI) مع Tcl.

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

تم تطوير Tk في الأصل على أنه امتداد لـ Tcl ، بواسطة نفس الشخص الذي اخترع Tcl. ولكن سرعان ما أصبحت Tcl مكتبة عبر الأنظمة الأساسية ، وهي متاحة للمبرمجين بعشرات اللغات. تم إصدار Tk علنًا في عام 1991 ، وتم إصدار وحدة Pykon’s Tkinter في عام 1994. جاء PerlTk بعد ذلك بوقت قصير.

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

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

دروس المعارف التقليدية

تتضمن العديد من دروس Tcl المذكورة أعلاه معلومات عن المعارف التقليدية. التركيز التالي على وجه التحديد.

  • يعد البرنامج التعليمي الرسمي لبدء العمل مكانًا رائعًا حقًا للبدء ؛ تتضمن كل خطوة عينات كود لـ Tcl و Ruby و Perl و Python ؛
  • إنشاء واجهة المستخدم الرسومية باستخدام Tk مع Tcl Language هو برنامج تعليمي غير موات إلى حد ما في المقام الأول لجمهور لديه معرفة البرمجة الأساسية ؛ كتب نفس المؤلف تعليمي Tk لبيرل كذلك.
  • دروس Ruby / Tk من RubyLearning.com هي مكان جيد للبدء فيه.
  • يعد تطبيق Python’s Tk جزءًا من المكتبة القياسية ، وتوفر وثائق Python الرسمية برنامجًا تعليميًا مفيدًا ؛
  • مقدمة غير المبرمجين لـ Tcl / Tk هو برنامج تعليمي حول كل من Tcl و Tk ، ولكن مع افتراض أساسي أنك لن تستخدم Tcl بدون Tk.

هل يجب أن أتعلم Tcl?

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

والأهم من ذلك أنها مختلفة حقًا. إذا انتقلت من JavaScript إلى PHP إلى Ruby إلى Python ، فستستمر في إعادة قراءة الأرضية المفاهيمية المتشابهة جدًا. أنت تتعلم بناء جملة جديدة وكلمات رئيسية جديدة ، لكنك في الحقيقة ليست طريقة جديدة للتفكير.

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

مزيد من القراءة والموارد

لدينا المزيد من الأدلة والبرامج التعليمية والرسوم البيانية ذات الصلة بالتشفير والتطوير:

  • Perl Guide and Resources: لغة بيرل هي لغة أخرى قوية لكنها تقليدية. اكتشف المزيد.
  • مقدمة وموارد وأسئلة شائعة من Python: احصل على كل المعلومات التي تحتاجها عن هذه اللغة القوية المترجمة.
  • مقدمة عن Ruby on Rails: اكتشف كل شيء عن لغة البرمجة الشائعة هذه.

ما هو الرمز الذي يجب أن تتعلمه?

هل تشعر بالارتباك حول لغة البرمجة التي يجب أن تتعلم البرمجة بها؟ تحقق من مخطط المعلومات الخاص بنا ، ما الرمز الذي يجب أن تتعلمه؟ إنه لا يناقش الجوانب المختلفة للغات فحسب ، بل يجيب على أسئلة مهمة مثل ، “كم من المال سأجني برمجة جافا للعيش؟”

ما هو الرمز الذي يجب أن تتعلمه؟
ما رمز يجب أن تتعلمه?

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map