قصة برنامجي الأكبر. كيف عملته ولمَ تركته!
(هذه دردشة مبرمج ^.^، قد تكون بلا هدف عدا الكلام عني وغير مرتبه ... إن كنت تظن أن وقتك ثمين فأتركها!)
كما تعرفون. فأنا مولع بالبرمجة ومنذ سنين وأنا مداوم على تعلم الجديد منها وتطبيقها على حد سواء. على أيه حال فأنا أرا فيها متعة كبيرة :) ... ولكن هناك أمر غريب. أنني عندما كنت أستخدم مثلا Visual Basic 6. أشعر أن الأشياء التي أكتبها بها غبية :D. مع أنها كانت تفي بالمطلوب ^^. ولا ينقصها شيء!
أحياناً أشعر بالكسل من كتابة أمر ما فمثلا. عملت برنامج في وقت سابق يتعلق بأرشفة برامج الجوال عندي وترتيبهم وعرضهم بشكل مختصر وبشرح عن كل واحد منهم - البرنامج سيحول إلى موقع أنترنت قريبا - المهم بالتأكيد تتوفر في لغة البرمجة تعامل مع قواعد البيانات وما إلى ذلك. لكنني لم أستعملها مطلقاً بل جعلت البرنامج يعتمد على الملفات بدل قواعد البيانات.
تخيلوا أن هناك جدولا لقاعدة بيانات، يغطي إحتياجات برنامجي - وقارنو بما فعلت أنا، وضعت مجلد مكان كل سطر Row. ووضعت فيه أربع ملفات من نصية txt بدلاً من كل حقل!
وكان البرنامج يتولى فتح المجلدات مجلداً مجلداً. ويسرد المجلدات في قائمة (ListBox).محتويات القائمة كانت تؤخذ من كل مجلد من محتوى الملف name.txt. كيفية ربط الإسم بعنوان المجلد كانت غير واضحة نوعاً ما لكنني وقتها إستخدمت (FolderBox) لا أدري إن أبقوا هذه الأداة في VisualBasic.net ام لا. المهم كنت أربط الـindex بالـindex الآخر مع طرح رقم أو رقمين منهم ^^ لا يهم.
عند الضغط على عنصر من الـListBox يتم تعبئة عناصر الواجهة بالمعلومات الخاصة بذك العنصر وهو بهذه الحالة إسم برنامج. فيتم قراءة محتويات الملفات note.txt, readme.txt وmodel.txt. في كل من المربعات الخاصة بها!.
يتم كذلك بعد هذه العملية قراءة الصور الموجودة في نفس المجلد وعرضها بطريقة ما في مربع خاص مع زرين لتقليب الصور.
هذا ما كانت فكرة البرنامج عليه. وأتمنى أن أوضحت كيفية إستخدام طريقة بديلة لقواعد البيانات. رغم أنها غريبة بعض الشيء لكنها نفعتني في ذلك الوقت خصوصاً أنني كنت أجهل كيفية التعامل مع قواعد البيانات، كما أن فيجوال بيسك كانت سيئة التعامل مع هذا الأمر!
وواجهتني مشكلة، حيث أنني كنت أنوي نشر البرنامج على أقراص مدمجة وتوزيعة في السوق (سوق بغداد آنذاك) لكن لم تتحقق الفكرة لأنني لم أنهي البرنامج بالشكل المطلوب، كما أن فكرة أن أعمله بالفيجوال بيسك 6 كانت فكرة سيئة لأنها محدودة الإمكانيات بشكل رهيب، حيث أنني كنت أنوي إضافة المزيد من الميزات مثل إمكانية الإتصال بموقع (مخصص) وجلب البرامج منه لكن الفكرة باءت بالفشل .... ربما لأنني لم أتعلم VB6 بالطريقة المطلوبة!! من يدري :) . على أية حال أنا قلت وداعاً لVB6 مع أنني الآن اجد نفسي معها وهذه المرة مجبراً حيث أنني أدرسها كمقرر في الجامعة (VB.net أشعر بالغباء عن التعامل معها! تخيل أنني أعيد دراسة ما كنت متمرساً به منذ 3 سنين! سهلة جداً بحيث أنني اكرهها!)
البرنامج لن أنشره لأسباب عدة منها أنه مليء ببرامج الجوال المكسورة الحماية وغير المرخصة. إضافة إلى أنه أصلاً بني بوندوز XP غير مرخص مع كافة البرامج الأخرى ... سابقاً كنت لا أجد حرجاً في ذلك أما الآن الوضع إختلف ولم أعد أستسهل التعامل مع البرامج المكسورة الحماية بل أنني تركتها كلياً. علاوة على أن هذه البرامج (برامج الجوال) مليئة بالفيروسات التي وضعها صانعوا الـCracks.
ومع هذا سأقوم بتحويل فكرة البرنامج إلى موقع (مشروع جدّي قيد التخطيط)، وسأوافيكم بالأخبار حال ظهور الجديد عن هذا الموقع، سيعجبكم وأنا متأكد من ذلك :). (الموقع لن أبدأ به قبل 6 شهور من الآن!).
* هذه الفكرة غير صالحة للتطبيق بوجود التطبيقات المتقدمة بلغة SQL وغيرها. لذلك أنصحكم بالإبتعاد عنها فهي كانت صالحة في عام 2005 بالنسبة لواحد مبتديء وجديد على البرمجة ^^.