PDA

View Full Version : سوال: مناسب ترین روش برای تعریف و استفاده از متد سراسری



R_Rajaee_Rad
جمعه 19 شهریور 1389, 21:19 عصر
سلام
برای اینکه بتونیم از متد سراسری استفاده کنیم مناسبترین و استاندارد ترین روش چیه؟
من روشهایی رو بلدم اما میدونم زیاد مناسب نیست
اگر با یک مثال ساده هم بزنید بد نیست
راستی چرا vb.net قابلیت Refactor رو نداره؟؟
توی سی شارپ با این قابلیت میتونستین کدهای تکراری رو انتخاب و با این گزینه به صورت اتومات براتون متد بسازه(البته قابلیت های دیگه هم داره)

راستی سرچ کردم همچین تاپیکی نبود

zoofa
جمعه 19 شهریور 1389, 22:02 عصر
شاید یکی از روش ها روش setting باشه که می تونید استفاده کنید؟؟؟

آیا روش بهتری از setting هست که توی برنامه نویسی ازش استفاده کنیم؟؟؟

مرسی

salehbagheri
جمعه 19 شهریور 1389, 22:09 عصر
استفاده از توابع و متدهای Static یکی از پرکاربردترین هاست:

Public Shared Function YourMethod(ByVal Input As Object) As Object
'TODO
Return Output
End Function

R_Rajaee_Rad
جمعه 19 شهریور 1389, 22:14 عصر
استفاده از توابع و متدهای Static یکی از پرکاربردترین هاست:

Public Shared Function YourMethod(ByVal Input As Object) As Object
'TODO
Return Output
End Function


تشکر...
کد شما قابل درکه ولی اثری از استاتیک نمیبینم
در ضمن توی سی شارپ از تعریفی به نام متد استفاده میشود.توی vb.net همون ساب روتین و تابع بگیم درسته؟
راستی Refactor در vb.net موجود نیست؟؟

salehbagheri
جمعه 19 شهریور 1389, 22:26 عصر
توابع استاتیک در VB.NET با کلمه کلیدی Shared شناخته میشن.

متدهم ربطی به زبان خاصی ندارد.


راستی Refactor در vb.net موجود نیست؟؟
فعلاً خیر ...

Mehdi6052
جمعه 19 شهریور 1389, 23:43 عصر
راستی Refactor در vb.net موجود نیست؟؟


من 2 DVD ابزارها و کامپونت های VS را خریده ام که ابزار Refactor در آن قرار دارد(سی دی ها مال شرکت دریا سافته). و این ابزار به راحتی می تواند در محیط VS نصب شود و برای تمام زبانها کار کند(فقط در محیط کد نویسی کار می کند).

R_Rajaee_Rad
شنبه 20 شهریور 1389, 06:21 صبح
توابع استاتیک در VB.NET با کلمه کلیدی Shared شناخته میشن.

متدهم ربطی به زبان خاصی ندارد.


فعلاً خیر ...

کامل متوجه شدم
اما میخوام بدونم این تکه کدها که برای کلید اینتر برای تب و همچنین قطع صدای بوق پس از فشردن اینتر هست.آیا ارزشش رو داره که برای این ها هم متد درست کنم؟؟
اگر شما بخواهید از این کدها در سایر برنامه هاتو و دیگر فرم ها استفاده کنید با استفاده از این کدها چه طوری متد می نوشتید؟(حرفه ای)

این توی رویداد KEY_DOWN هست

If e.KeyChar = Chr(13) Then
e.Handled = True
SendKeys.Send("{Tab}")
End Ifداخل رویداد key_press

If e.KeyCode = Keys.Enter Then
SendKeys.Send("{Tab}")

salehbagheri
شنبه 20 شهریور 1389, 11:04 صبح
آیا ارزشش رو داره که برای این ها هم متد درست کنم؟؟
راستش اینها اکثراً سلیقه ای شده و هر کسی ساز خودشو میزنه! اما در برنامه نویسی اصل اینه که هر متدی یک کار خاصی رو انجام بده.
حالا شما هم اگر خواستید برای هر یک، متدی جداگانه بنویسید.


اگر شما بخواهید از این کدها در سایر برنامه هاتو و دیگر فرم ها استفاده کنید با استفاده از این کدها چه طوری متد می نوشتید؟

کاری نداره که! در اینجا من سابروتین رو برای همون فرم ساختم. در صورتی که میخواهید در کل برنامه استفاده کنید باید از Public Shared استفاده کنید.

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
SentTab(e.KeyChar)
End Sub

Private Sub SentTab(ByVal Input As Char)
If Input = Chr(13) Then
SendKeys.Send("{Tab}")
End If
End Sub

R_Rajaee_Rad
شنبه 20 شهریور 1389, 11:48 صبح
راستش اینها اکثراً سلیقه ای شده و هر کسی ساز خودشو میزنه! اما در برنامه نویسی اصل اینه که هر متدی یک کار خاصی رو انجام بده.
حالا شما هم اگر خواستید برای هر یک، متدی جداگانه بنویسید.



کاری نداره که! در اینجا من سابروتین رو برای همون فرم ساختم. در صورتی که میخواهید در کل برنامه استفاده کنید باید از Public Shared استفاده کنید.

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
SentTab(e.KeyChar)
End Sub

Private Sub SentTab(ByVal Input As Char)
If Input = Chr(13) Then
SendKeys.Send("{Tab}")
End If
End Sub


ممنون
راستش من یه دردی دارم اونم اینه که تا با حال با یه ادم حرفه ای به مدت زیاد دم خور نبودم تا این نکات ریزو یاد بگیرم.فکر میکنم هر کدی که مینویسم از لحاظ دستور زبانی درسته اما به لحاظ ساختاری و استادارد غلط هست