نمایش نتایج 1 تا 8 از 8

نام تاپیک: بهترین نوع کد نویسی برای افزایش سرعت برنامه چه چیزی میباشد

  1. #1

    بهترین نوع کد نویسی برای افزایش سرعت برنامه چه چیزی میباشد

    سلام و خسته نباشید به دوستان برنامه نویس.
    یه چند روز هستش سوالی ذهن من رو مشغول کرده بابت افزایش سرعت کدنویسی و برنامه نویسی.
    بنده فیلد های مربوط به جدول و پروسجر خودم که ADO هستش رو به صورت متغییر تعریف کردم و همین طوری داده های جدولم رو داخل یک متغییر قرار میدم درست مثل Session و در همه جا استفاده میکنم به این صورت.

    public static string S_Site = "";

    که اطلاعات کلی که لازم دارم همه رو داخل متغییر ها ذخیره میکنم و در همه جا برنامه چون داخل این متغییر سراسری که برای هر جدول یک کلاس ایجاد کردم و تمام متغییر های که میخوام داخلش داده قرار بدم به این صورت

    public static string S_Site = "";

    قرار دادم ولی جدول های فیلد هایشان رو نیاز دارم و ساحتار فیلد شون یا همون نوشته رو فراموش میکنم باز به این صورت نوشته

    public static string E_ID = "E_ID";

    و اسم فیلد رو به این صورت صدا میزنم و استفاده میکنم

    cmd.Parameters.AddWithValue(at+P_Error.E_Code, E_Code.ToString().Trim());

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

  2. #2
    بنیان گذار Barnamenevis آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    کرج، گلشهر
    سن
    46
    پست
    6,379

    نقل قول: بهترین نوع کد نویسی برای افزایش سرعت برنامه چه چیزی میباشد

    من تو پروژه های ویندوز فرمز همیشه از Entity Framework استفاده می کنم. از لحاظ سرعت یک کم کندتر از ADO.NET به نظر میاد. اما برنامه نویسی رو خیلی ساده می کنه.

  3. #3

    نقل قول: بهترین نوع کد نویسی برای افزایش سرعت برنامه چه چیزی میباشد

    سلام و خسته نباشید بنده از EF استفاده میکردم ولی بخاطر باگ های فراوان که یکی از اون باگ ها بزرگ تاریخ هستش که در دیتابیس نوع فیلد تاریخ date باشه و ویندوز، ویندوز 10 چی EF یا Linq خیلی بد به برنامه آسیب میزنه بخاطر همین پروسیژیر و کد نویسی سه لایه انجام میدم کاهش کد نویسی به شدت دارم و با یک خط کد همه کارم انجام میدم و نصف کارم روی سرور انجام میشه اگه مشکلی برخورد کنم روی سرور تغییرات اعمال میکنم و روی برنامه هم اعمال میشه

  4. #4
    بنیان گذار Barnamenevis آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    کرج، گلشهر
    سن
    46
    پست
    6,379

    نقل قول: بهترین نوع کد نویسی برای افزایش سرعت برنامه چه چیزی میباشد

    منظورتون فیلد Date خالی هست؟

    من همیشه جنس فیلدهای تاریخ رو DateTime می گیرم و مشکلی هم ندارم.

    من الان یک تست در حالتی که گفتید انجام دادم. مشکلی نداشت.

    این ساختار جدول بود:
    TableStructure.jpg

    این داده های درون جدول:
    TableData.jpg
    این کد برنامه:
    class Program
    {
    static void Main(string[] args)
    {
    var persianCulture = new PersianCulture();
    persianCulture.DateTimeFormat.ShortDatePattern = "yyyy/MM/dd";
    persianCulture.DateTimeFormat.LongDatePattern = "dddd d MMMM yyyy";
    persianCulture.DateTimeFormat.AMDesignator = "صبح";
    persianCulture.DateTimeFormat.PMDesignator = "عصر";
    Thread.CurrentThread.CurrentCulture = persianCulture;
    Thread.CurrentThread.CurrentUICulture = persianCulture;


    var db = new DateTestDBEntities();
    /*
    for (int i = 1; i <= 5; i++)
    {
    db.TestTable.Add(new TestTable()
    {
    TestDate = DateTime.Now.AddDays(i)
    });
    }
    db.SaveChanges();
    */
    var dates = db.TestTable.ToList();
    foreach (var date in dates)
    {
    Console.WriteLine($"Date: {date.TestDate:yyyy/MM/dd}");
    }
    }


    این خروجی کار بود:
    Output.jpg
    این هم کلاس PersianCulture:
    PersianCulture.zip

  5. #5

    نقل قول: بهترین نوع کد نویسی برای افزایش سرعت برنامه چه چیزی میباشد

    با سلام دوباره شما این مورد رو با تبدیل تاریخ سیستم به شمسی انجام بدید متوجه منظور بنده میشد اگه تاریخ ویندوز شمسی باشه وقتی تاریخ شمسی پاس بدید به دیتابیس سیستم شمسی به میلادی تبدیل میکنه ولی اگه تاریخ میلادی بفرسته سیستم تاریخ فکر میکنه شمسی ولی چون تاریخ ویندوز 10 شمسی هستش سیستم تاریخ میلادی شمسی میدونه و 600 سال تاریخ میبره جلو اگه دستی هم شما تاریخ بدید باز به دیتابیس این اتفاق میفته ولی از function استفاده کنید و توسط فانکشن ارسال کنید تاریخ شمسی درست میلادی ارسال و ثبت میشه و تاریخ میلادی درست شمسی میشه فقط تاریخ ویندوز شمسی باید باشه حتما

  6. #6
    بنیان گذار Barnamenevis آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    کرج، گلشهر
    سن
    46
    پست
    6,379

    نقل قول: بهترین نوع کد نویسی برای افزایش سرعت برنامه چه چیزی میباشد

    من این مورد رو بعضی جاها دیدم، اما همیشه این اتفاق نمیافته.

    شما یک جدول مثل اونی که من ساختم در دیتابیس بساز، تاریخ سیستمت رو بگذار روی شمسی، و این برنامه (همون سورس بالایی رو ضمیمه کردم) تست کن.

    بعد چک کن ببین کارت چه تفاوتهایی داشهی که باعث شده چنان اتفاقی بیافته.
    فایل های ضمیمه فایل های ضمیمه

  7. #7

    نقل قول: بهترین نوع کد نویسی برای افزایش سرعت برنامه چه چیزی میباشد

    سلام و خسته نباشید بنده از سورس شما استفاده کردم و سعی کردم بهش دستی تاریخ شمسی بدم تا پاس بده به سرور و میلادی بشه و حالت شمسی برگردونه ولی خطا داد و خطا قبل از اجرا نوع داده نمیشناسه چون شما زدید تاریخ جاری سیستم رو بگیر و تاریخ غیر جاری سیستم دادم نگرفت ممنون میشم بگید چطور تاریخ غیر سیستم دستی بدم که روی دیتابیس بره ذخیره کنه و همون شمسی اش رو برگدونه با تشکر

  8. #8
    بنیان گذار Barnamenevis آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    کرج، گلشهر
    سن
    46
    پست
    6,379

    نقل قول: بهترین نوع کد نویسی برای افزایش سرعت برنامه چه چیزی میباشد

    من این کد رو تست کردم و درست بود (تاریخ ویندوز من الان روی شمسی تنظیم شده):
    var persianCulture = new PersianCulture();
    persianCulture.DateTimeFormat.ShortDatePattern = "yyyy/MM/dd";
    persianCulture.DateTimeFormat.LongDatePattern = "dddd d MMMM yyyy";
    persianCulture.DateTimeFormat.AMDesignator = "صبح";
    persianCulture.DateTimeFormat.PMDesignator = "عصر";
    Thread.CurrentThread.CurrentCulture = persianCulture;
    Thread.CurrentThread.CurrentUICulture = persianCulture;

    var db = new DateTestDBEntities();

    Console.Write("Please Enter a Persian Date: ");
    string input = Console.ReadLine();
    DateTime dtInput = DateTime.Parse(input);

    db.TestTable.Add(new TestTable() {TestDate = dtInput});
    db.SaveChanges();

    var dates = db.TestTable.ToList();
    foreach (var date in dates)
    {
    Console.WriteLine($"Date: {date.TestDate:yyyy/MM/dd}");
    }

تاپیک های مشابه

  1. افزایش سرعت در نوع کد نویسی
    نوشته شده توسط khanboloky در بخش T-SQL
    پاسخ: 1
    آخرین پست: شنبه 08 مهر 1396, 12:16 عصر
  2. پاسخ: 1
    آخرین پست: دوشنبه 18 اردیبهشت 1391, 15:19 عصر
  3. سوال: چه راههایی وجود داره برای افزایش سرعت برنامه
    نوشته شده توسط sadaf_ در بخش C#‎‎
    پاسخ: 4
    آخرین پست: پنج شنبه 08 اردیبهشت 1390, 14:40 عصر
  4. روش یا کامپوننتی برای افزایش سرعت برنامه های بانک اطلاعاتی
    نوشته شده توسط احسان آریانو در بخش برنامه نویسی در Delphi
    پاسخ: 8
    آخرین پست: شنبه 17 آذر 1386, 03:17 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •