لماذا لم تنتقل إلى الدوت نت حتى الآن؟
مرفق كتاب اراه جيدا ويساعد للتحول من vb6 الى vb net
تم تعديل هذه المشاركة بواسطة عماد الخليل في 17 أغسطس 2009 في 00:17

تزود من التقوى فإنك لا تدري *** إذا جن ليل هل تعيش إلى الفجر
فكم من فتى أمسى وأصبح ضاحكاً *** وقد نسجت أكفانه وهو لا يدري
لقراءة القرآن الكريم و سماعه و تفسيره ........

أ/عماد ,, منور الموضوع :blush:
الواضح أن الأعضاء غير مقتنعين بالفكرة -_-
إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال
المقال فوق ممتاز وانا مقتنع جدا بكلامك
بس يا ريت تضع رجلى على خطوة للامام وتعطينى مسار لتحميل الفجول نت اولاً
وياريت لو فى كتاب غير الكتب الكثيرة الموجودة يسهل الموضوع معى واكون شاكر waleed459@hotmail.com
GHOST2010 كتب:السلام عليكــم ورحمـة الله وبركاتــه ،،
نعم أخى الكريم أعلم ذلك وأنا أحد مشرفى هذا القسم وحازم كذلك وكنا من قبل مشرفين على قسم فيبى6 أى أننا نعلم إمكانيات هذا وذاك جيدا وهذا هو ما دفعنى للسؤال
قبل أن أنتقل إلى الدوت نت كنت أقول "لماذا أغير اللغة طالما أنى أستطيع أن أفعل بها كل ما أريد"
لكن بعدما جربت الدوت نت وقارنت بين اللغتين كانت نتيجة المقارنة (وأظن أنى قلت هذا المثال سابقا) كرجل اشترى دراجة ثم فتح الله عليه واشترى BMW لكنه تعود على ركوب الدراجة فترك السيارة جانبا وظل يستعمل الدراجة لأنه تعود عليها
كما قال حازم الأمر ليس مختلفا إلا فى الـIDE ,, طبعا توجد بعد الاختلافات الطفيفة وبعض الأوامر وأنواع البيانات قد انتهت أو تغيرت طريقة استخدامها لكن فى الجملة يمكن لك الانتقال بمنتهى السهولة
الدوت نت متميز جدا وأضاف الكثير والكثير من الأشياء المهمة
مثلا ,, إذا كنت تريد وضع برنامجك فى صينية النظام (System Tray) كان يتم ذلك فى VB6 بهذه الطريقة
'Download the full source+pictures+... at http://kpdteam.hypermart.net/download/tray.zip Private Type NOTIFYICONDATA cbSize As Long hWnd As Long uId As Long uFlags As Long ucallbackMessage As Long hIcon As Long szTip As String * 64 End Type Private Const NIM_ADD = &H0 Private Const NIM_MODIFY = &H1 Private Const NIM_DELETE = &H2 Private Const NIF_MESSAGE = &H1 Private Const NIF_ICON = &H2 Private Const NIF_TIP = &H4 Private Const WM_LBUTTONDBLCLK = &H203 Private Const WM_LBUTTONDOWN = &H201 Private Const WM_RBUTTONUP = &H205 Private Declare Function Shell_NotifyIcon Lib "shell32" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, pnid As NOTIFYICONDATA) As Boolean Dim TrayI As NOTIFYICONDATA Private Sub Form_Load() TrayI.cbSize = Len(TrayI) 'Set the window's handle (this will be used to hook the specified window) TrayI.hWnd = pichook.hWnd 'Application-defined identifier of the taskbar icon TrayI.uId = 1& 'Set the flags TrayI.uFlags = NIF_ICON Or NIF_TIP Or NIF_MESSAGE 'Set the callback message TrayI.ucallbackMessage = WM_LBUTTONDOWN 'Set the picture (must be an icon!) TrayI.hIcon = imgIcon(2).Picture 'Set the tooltiptext TrayI.szTip = "Recent" & Chr$(0) 'Create the icon Shell_NotifyIcon NIM_ADD, TrayI Me.Hide End Sub Private Sub Form_Unload(Cancel As Integer) 'remove the icon TrayI.cbSize = Len(TrayI) TrayI.hWnd = pichook.hWnd TrayI.uId = 1& Shell_NotifyIcon NIM_DELETE, TrayI End End Sub Private Sub mnuPop_Click(Index As Integer) Select Case Index Case 0 MsgBox "KPD-Team 1998" + Chr$(13) + "URL: http://www.allapi.net/" + Chr$(13) + "E-Mail: KPDTeam@Allapi.net", vbInformation + vbOKOnly Case 2 Unload Me End Select End Sub Private Sub pichook_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Msg = X / Screen.TwipsPerPixelX If Msg = WM_LBUTTONDBLCLK Then 'Left button double click mnuPop_Click 0 ElseIf Msg = WM_RBUTTONUP Then 'Right button click Me.PopupMenu mnuPopUp End If End Sub Private Sub Timer1_Timer() Static Tek As Integer 'Animate the icon Me.Icon = imgIcon(Tek).Picture TrayI.hIcon = imgIcon(Tek).Picture Tek = Tek + 1 If Tek = 3 Then Tek = 0 Shell_NotifyIcon NIM_MODIFY, TrayI End Subأما فى الدوت نت
Me.TrayIcon1.Visible = Trueإذا أردت أن تحصل على مسار مجلد النظام (System32)
Private Declare Function GetSystemDirectory Lib "kernel32" Alias "GetSystemDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long Private Sub Form_Load() 'KPD-Team 1998 'URL: http://www.allapi.net/ 'E-Mail: KPDTeam@Allapi.net Dim sSave As String, Ret As Long 'Create a buffer sSave = Space(255) 'Get the system directory Ret = GetSystemDirectory(sSave, 255) 'Remove all unnecessary chr$(0)'s sSave = Left$(sSave, Ret) 'Show the windows directory MsgBox "Windows System directory: " + sSave End Subطبعا يمكن استخدام الدالة Environ
فى الدوت نت
Environment.GetFolderPath(Environment.SpecialFolder.System)إذا أردت أن تنشئ مسار تنفيذ (Thread) آخر داخل البرنامج
'Using the CreateThread function in Visual Basic 'is very risky! VB5 is 'kinda' stable, but VB6 'applications will probably crash when you 'use the CreateThread function. 'In a form 'Add a command button to the form Private Sub Command1_Click() 'KPD-Team 1999 'URL: http://www.allapi.net/ 'E-Mail: KPDTeam@Allapi.net 'After you click this button, try to move the window 'You will see that the AsyncThread-function was executed asynchronously hThread = CreateThread(ByVal 0&, ByVal 0&, AddressOf AsyncThread, ByVal 0&, ByVal 0&, hThreadID) CloseHandle hThread End Sub Private Sub Form_Unload(Cancel As Integer) 'If the thread is still running, close it If hThread <> 0 Then TerminateThread hThread, 0 End Sub 'In a module Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Declare Function CreateThread Lib "kernel32" (lpThreadAttributes As Any, ByVal dwStackSize As Long, ByVal lpStartAddress As Long, lpParameter As Any, ByVal dwCreationFlags As Long, lpThreadID As Long) As Long Declare Function TerminateThread Lib "kernel32" (ByVal hThread As Long, ByVal dwExitCode As Long) As Long Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long Public hThread As Long, hThreadID As Long Public Sub AsyncThread() 'Let this thread sleep for 10 seconds Sleep 10000 hThread = 0 End Subفى الدوت نت
Dim th As New Threading.Thread(AddressOf ThreadFunc) th.Start()طبعا هذه مجرد شعرة فى جلد الثور :D :D
أما إذا تحدثت بالتفصيل عن مميزات الدوت نت فلن أنتهى
بالنسبة للـDotNetFramework فيمكنك توزيعه مع برنامج الإعداد الخاص ببرنامجك والدوت نت يوفر لك برنامج إعداد جميل جدا وسهل الاستخدام
أنا تطورت كثيرا بعدما انتقلت إلى الدوت نت وأظن أن جميعنا يريد أن يطور نفسه
إنتقل إلى الدوت نت وسترى الفرق بنفسك (كأنى عامل إعلان عن مسحوق غسيل :D :D )
نعم كنت أحاول الإنتقال من vb6 إلى الدوت نيت
لقد أتقنت بعض اللأشياء فيها فهي لا تختلف كثيراً عن vb6 ولكن فقط إختصار الأكواد
و الاسم تغير أصبح visualbasic2008.net فقط ولكن المشكلة التي أعاني منها ثقل هذه اللغة على جهازي
لذلك أكثر الأحيان أبرمج بلغة الفيجوال بيسك 6
لن تستطيعوا تغيير محبي الفيجوال بيسك 6 حتى ما يغيروا في أنفسهم أنهم
يريدون الإنتقال من الفيجوال بيسك 6 إلى الدوت نيت
تحياتي :blush:
تم التحدث عن هذا الموضوع كثيراً !!!
وغريبة أن هناك لدية إصرار علي فتح باب المناقشة في هذا الموضوع كثيراً !!!
وكالعادة ، تبدأ بسؤال بسيط
لماذا لم تنتقل الي الدوت نيت ؟؟؟
----------------------------------
بدايتاً يجب أن نعلم جميعاً أن سينتاكس لغة فيجوال بيزيك 6.0 قريبة جداً بنسبة كبيرة جداً من فيجوال دوت نيت ... ولكن لا يعني ذلك أن الجوهر واحد !!!
فجوهر فيجوال 6.0 يعتمد كلياً علي إمكانيات الدوت كوم ، وهي مجموعة من ملفات الأنظمة الموجودة مع حزمة فيجوال بيزيك 6.0 ومع نظام التشغيل OS.
أما جوهر الدوت نيت يعتمد علي حزمة الـ Framework ، وهي المنصة الرئيسية للـدوت نيت ، لذلك ليس من الصالح أن نفصل بين C#, ASP.NET, VB.NET ، وغيرها ... فكلهم ينظرون الي الـ Framework ... ولكن الخلال الوحيد في سينتاكس المترجم كي يتناسب مع لغات برمجة أخري ، مثل VB6.0.
----------------------------
لكن من وجهه نظري الشخصية هو أنه ليس من العقل أن نتحدث عن الانتقال الي فيجوال دوت نيت أو ترك فيجوال 6.0 ... وليس من العقل أن نتحدث عن محبي فيجوال 6.0 أو محبي فيجوال دوت نيت ... ولكن دعونا نتحدث عن العقل بعض الشيء !!!
فيجوال بيزيك 6 ما زال يسيطر علي السوق ، وما زال هناك برامج كثيرة جداً وشركات برمجة قائمة عليه ، فليس من العقل أن نهدم المنازل الأثرية القديمة كي نبني بناء حديث ... فلماذا نفكر في الهدم إن كان البناء ما زال سليم وقوي وخالي من العيوب ... والعيوب هنا ليس عيوب اللغة نفسها ، ولكن عيوب تلبية احتياجات العمل والعملاء.
ولكن في نفس الوقت من العقل أن ندرس الدوت نت المناسب لنا سواء VB Dot Net أو C# أو غيرها لغرض المستقبل وليس لغرض هد المعبد فوق رأسي !!!
فعلي سبيل المثال ، أنا حالياً لدي مشروع قوي مبني علي فيجوال بيزيك 6.0 ويعمل بالسوق ... ويعمل علي أساس ثلاثة أنواع من قواعد البيانات ، وهي :
Access Database
SQL-Server Database
Oracle Database
فهل من العقل أن أهد كل هذا المجهود فقط كي أنتقل الي الدوت نيت ؟؟؟
هذا كلام غير منطقي جداً ، ولكن المنطق أن أطور نفسي لغرض المستقبل
فقط لا غير
وبدأت بالفعل دراسة الدوت نيت 2008 ، وبعدها سأنتقل الي 2010
هذا هو كلام العقل
---------------
أما من يقولوا شدوا الرحيل !!!
فصدقوني ، هذا ليس فكر بناء شركات راقية !!!
والمسألة ليست مجرد حب فيجوال 6 أو فيجوال دوت نيت أو أو أو أو !!!!
ولكن المسألة مسألة عمل فعلي موجود
بالتوفيق للجميع
وأرجو أن أكون قد أوصلت فكرتي لكم جميعاً دون غضب مني
بالتوفيق مرة أخري
تم تعديل هذه المشاركة بواسطة MMA_EG_Cairo في 6 ديسمبر 2011 في 20:33
لا تخلط ما بين شخصيتي وأسلوبي .. فشخصيتي هي
ما أنا عليه وتحت تصرفي .. وأسلـوبي يعتمد عليـك
أنت وتصرفاتك
ولحظاتي صمت... وصمـت لحظاتي كلام ... كلامه
اشد آلام ... فصمتي أنا عنوان
