گلچین مطالب فارسی

گلچین مطالب فارسی، دانلود فیلم و آهنگ، اس ام اس جدید، دانلود عکس، بیوگرافی، اخبار ورزشی

گلچین مطالب فارسی

گلچین مطالب فارسی، دانلود فیلم و آهنگ، اس ام اس جدید، دانلود عکس، بیوگرافی، اخبار ورزشی

Closure چیست؟

اگر برنامه نویس C# باشید حتما به یاد دارید که Anonymous Method ها یا متد های بی نام یکی از ویژگی هایی بود که در نسخه دوم سی شارپ معرفی شد و همینطور در نسخه سوم عبارت های Lambda شکل بهتری به متد های بی نام دادند. مسلما بسیاری از ما کدی یا کد هایی مشابه زیر نوشته ایم:

1
2
3
4
5
6
7
static void Main(string[] args)
{
    int x = 0;
    Action action = delegate { Console.WriteLine(x); };
    x = 1;
    action();
}

یا به فرم ساده تر:

1
2
3
4
5
6
7
static void Main(string[] args)
{
    int x = 0;
    Action action = () => Console.WriteLine(x);
    x = 1;
    action();
}

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

جواب این سوال ها وجود مفهومی است به نام Closure در پس این سینتکس ساده و روان.

Closure چیست؟

به بیان ساده Closure رفرنسی به یک تابع است، در عین حال که به scop ای که در آن تعریف شده است نیز اشاره دارد. بنابراین می توان عبارت های لامبدا و متد های بی نام را یک Closure دانست.

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

کامپایلر C# هنگام کامپایل برای هر متد بی نام یک کلاس تولید می کند و متغیر های قابل دسترس در آن scop را نیز به عنوان فیلد هایی از آن کلاس در نظر می گیرد، مثلا برای متد بی نام کد مثال اول، کلاسی مشابه زیر تولید می شود:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[CompilerGenerated]
private sealed class <>c__DisplayClass1
{
   public int x;
 
   public void
b__0()
   {
       Console.WriteLine(this.x);
   }
}
 
private static void Main(string[] args)
{
   <>c__DisplayClass1 class2 = new <>c__DisplayClass1();
   class2.x = 0;
   Action action = new Action(class2.
b__0);
   class2.x = 1;
   action();
}

همانطور که می بینید کلاس تولید شده فیلدی به نام x و متدی با بدنه متد بی نام را دارا می باشد که در تابع Main یک آبجکت از این کلاس ساخته شده و فیلد x مقدار دهی شده است و سپس متد موجود در این کلاس به عنوان متد بی نام به Action اختصاص یافته و در انتها مجددا مقدار x به 1 تغییر داده شده است.

در واقع با این مکانیزم است که یک Anonymous Method به کلیه مقادیر و فیلد ها، به خصوص مقادیر آپدیت شده متغیر ها دسترسی دارد.

بد نیست برای کامل تر شدن بحث مثال دیگری را نیز بررسی کنیم.

کد زیر را ببینید:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
namespace Closure
{
    class Program
    {
        static Action[] actionArr = new Action[10];
 
        static void FillActions(int count)
        {
            for (int i = 0; i < count; i++)
            {
                actionArr[i] = delegate()
                {
                    Console.WriteLine("{0} ", i);
                };
            }
        }
 
        static void Main(string[] args)
        {
            FillActions(actionArr.Length);
 
            for (int i = 0; i < actionArr.Length; i++)
            {
                actionArr[i]();
            }
        }
    }
}

در نگاه اول احتمالا خواهید گفت که عدد 1 تا 10 نمایش داده خواهد شد، اما خروجی به صورت می باشد:

10 10 10 10 10 10 10 10 10 10

همانطور که گفته شد یک Closure رفرنسی به کلیه متغیر ها و خصوصیات قابل مشاهده در آن scop را در خود نگه می دارد. در این مثال حوزه فعالیت متغیر i درون حلقه for بوده و مقدار آن تا 10 افزایش میابد، دقت کنید که scop متغیر i تغییری نمی کند و یا پایان نپذیرفته و متغییر جدیدی ایجاد نمی شود، به همین دلیل است که کلیه متد ها به مقدار نهایی متغییر i اشاره دارند.

فکر می کنم نگاهی به کد تولید شده توسط کامپایلر موضوع را روشن تر کند:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
private static void FillActions(int count)
{
   Action action = null;
   <>c__DisplayClass2 class2 = new <>c__DisplayClass2();
   class2.i = 0;
   while (class2.i < count)
   {
       if (action == null)
       {
           action = new Action(class2.b__0);
       }
       actionArr[class2.i] = action;
       class2.i++;
   }
}

در واقع به دلیل داشتن یک scop ثابت برای متغیر i، تنها یک شی از کلاس <>c__DisplayClass2  ایجاد شده و بین کلیه action ها به اشتراک گذاشته شده است.

حال فرض کنید حلقه for را به صورت زیر تغییر دهیم:

1
2
3
4
5
6
7
8
for (int i = 0; i < count; i++)
{
    int j = i;
    actionArr[i] = delegate()
    {
        Console.WriteLine("{0} ", j);
    };
}

اینبار مشاهده خواهید کرد که اعداد 1 تا 10 نمایش داده می شود، چرا که scop متعیر j در هر بار اجرای حلقه پایان پذیرفته و مجددا ایجاد خواهد شد، بنابراین کامپایلر برای پیاده سازی درست مفهوم Closure که لازم است هر متد به scop خود اشاره کند، کدی مشابه زیر تولید خواهد کرد:

1
2
3
4
5
6
7
8
9
private static void FillActions(int count)
{
   for (int i = 0; i < count; i++)
   {
       <>c__DisplayClass2 class2 = new <>c__DisplayClass2();
       class2.j = i;
       actionArr[i] = new Action(class2.b__0);
   }
}

مشاهده می کنید که در هر حلقه یک شی جدید تولید شده و متغیر j مقدار دهی می شود.

پ.ن: بد نیست بدانید Closure یکی از مباحث پر کاربرد در زبان های functional محسوب می شود و ایده اولیه آن نیز از همین زبان های نشات گرفته شده و برای اولین بار پیاده سازی آن در زبان Scheme انجام شد.

                             


 

چگونه فروش موفقی داشته باشیم؟

 علی حضوری

  ما همواره در حال فروش محصولی هستیم. این محصول می‌تواند تولید کارخانه‌ها و بنگاه‌ها و یا  ذهن و استعدادهایمان  باشد. درنتیجه همه ما برای فروش بهتر نیاز به آموزش داریم.

بازاریابی و فروش محصول به‌اندازه تولید محصولات و خدمات و گاهی بیشتر از آن اهمیت دارد. پیدا کردن مشتری برای محصول دارای پیچیدگی‌هایی است که فروشندگان کارکشته معمولاً به‌خوبی از پس آن بر می‌آیند و سهم بزرگی از بازار را در دست می‌گیرند.

ما خواهان آن هـستـیم که در هنگام فروش همه‌چیز عالی و بـه بـهتـریـن نحو پیش رود و از آن مهم‌تر، می‌خواهیم پاسخ مشتری مثبت بـاشـد.

ایـن نکـات را هــنگام فروش مدنظر قرار دهید تا شانس موفقیت شما افزایش یابد:(مطالعه بیشتر در ادامه مطلب)

شرایط تست صدا

شـرایـط تسـت صـدا در مجموعه فرهنگی هنری آوای تهران ...

هدف اصلی از انجام تست صدا ، شناسایی صداهای ماندگار و استعدادهای ناشناخته در خوانندگی ، کر و گویندگی است. در آکادمی موسیقی آوای تهران قابلیت های صدا ، شناسایی ، آموزش و رشد داده میشود تا اثری بیاد ماندنی تولید شود. 

* تـنها صـداسـت کـه مـی مـانـــــد *

* تسـت صـدا :

ارســال CD :
با ذکر نام و شماره تماس روی CD ارسال به مجموعه

پست الکترونیکی :
با ذکر نام و شماره تمـاس
E-mail: sajjad.sahebi@yahoo.com

تلـفن تماس :   09198952972


* قـابل تـوجـه:
خوانندگان گرامی جهت شرکت در مرحله اول میـتوانند ضبط صدای خود را با امکانـات خـانگی و موبایل انجـام دهند و ارسـال نمایـند. صدای ارسال شده باید فاقـد هر گونه افکـت یا Tune باشد.

(لازم به ذکر است که صدای ضبط شده توسط شورای موسیقی مجموعه مورد بررسی قرار خواهد گرفت)


* اطـلاعـات لازم در مورد بورسیه مجموعه فرهنگی هـنـری آوای تهران
مـزیتـهـای بـورسـیه :

1) پرداخـت هـزینه های تولید آلبوم اول ازطرف موسسه تا ۵۰%(بسته به نظر شورا )
2) پرداخـت هزیـنه های تولـید آلـبوم و کنـسرت طی ۳ سال بـصورت ۱۰۰%
3) استفـاده رایگان از کلاسهای صداسـازی و تقـویت حـنجره
4) استـفاده از امتـیازات حـقـوقی و پـتـانسـیل های مجموعه(اخذ مجوز از وزارت ارشاد-خوانندگی در تـیـتـراژ فیلم و سریال ، اجرا در همایشها و…)
5) کارگردانی تولـید
6) مدیـریـت بازرگانی

* پارامترهای اصلی قابل بررسی در شورای مجموعه جهت اعطاء بورسیه

مرحله اول تست :

1) تـنـاسـب جـنـس صدا با فصل انتـشار 
2) گـرمی و گـیـرایـی صدا
3) تکـنیک و اطلاعات موسیقی در حنـجره
4) در صورت لزوم در 2 مرحله تست انجام میشود 

* تعهدات خواننده :
همکاری خواننده در تولید آلبوم و کنسرت بمدت ۳ سال ۹۰% به نفع موسسه ( کل هزینه از طرف مجموعه )
عـدم همکاری خواننده در آلبوم های دیگر و شبکه های ماهواره ( استعلام از وزارت ارشاد )
الـباقی تعـهدات در متـن قرار داد اصـلی خواهد بود

* توضــیحـات:
جوابـیه شـورای مجموعه جهت کارشناسـی تست صدا فقـط روزهای شنبه اعلام می گردد. 
جلـسه مجموعه با حضـور ۳ نفر از اعضاء تـیم تولید تشـکیل خواهد شد.

جهت شناسایی خوانندگانی که به صورت جدی قصد عضویت در مسیر تست صدا را دارند در مرحله ی اول تست مبلغ 10.000 تومان دریافت میگردد و در صورت قبولی ، مراحل بعدی بدون هزینه خواهد بود .

در مراحل ارسال CD و Email شماره فیش بانکی ، شماره تماس و نام دقیق ثبت گردد . 

پولشوییMoney Laundry و اثرات آن بر اقتصاد

عنوان مقاله : پولشوییMoney Laundry و اثرات آن بر اقتصاد

مولف/مترجم: محمد ابراهیم یوسفی

موضوع:

سال انتشار(میلادی): 2012 

وضعیت: تمام متن

 

مقدمه:

پول بعنوان یکی از مهمترین اختراعات بشری منصوب می گردد. این پدیده موجب از میان برداشته شدن مشکلات بوجود آمده از طریق مبادلات پیاپی شده و مبادله را تسریع و تسهیل کرده است. همچنین پول موجب تسریع و تسهیل گردش فعالیتهای اقتصادی، بخصوص گردهم آمدن هرچه آسانتر عوامل تولید باعث توزیع سریعتر و آسانتر کالاها و خدمات تولید شده می گردد. امروزه با توجه به ارتباط بین پول و فعالیتهای اقتصادی، ‌سطح عمومی قیمتها، تولید ناخالص ملی و سایر پارامترهای کلان اقتصادی نقش انکار ناپذیر آن در تغییر شاخصهای کلان اقتصادی مانند تورم، رکود، اشتغال، در آمد سرانه و غیره بسیار حائز اهمیت است.

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

پولشویی عمل بعد از کسب درآمد از منابع نامشروع است ...

 

تولید ناب

مقدمه:
امروزه برای یک رقابت سالم و موفق در اقتصاد، لازم است که اگر از رقبای جهانی بهتر نیستید، لااقل به خوبی هریک از آنها باشید. این فقط در مورد کیفیت صادق نیست، بلکه در مورد قیمتها، سفارش، فرایند جابجایی، راه اندازی پاسخگویی و دیگر زمان های چرخه نیزصادق است.تولید ناب یکی از مباحثی است که بر این موارد تاکید دارد.با ما همراه باشید تا این مبحث را مورد بررسی قرار دهیم.

تولید ناب چیست؟

تولید ناب از فلسفه بهبود مستمر استفاده می کند. با استفاده از فرهنگ کار گروهی سعی دارد اتلاف های موجود در فرآیند را بیابد، تحلیل کند و آنها را از بین ببرد. اثر چنین سیستمی، کاهش زمان تولید، کارایی بهتر کارکنان، کیفیت بالاتر، انعطاف پذیری بیشتر نسبت به بازار، عمر بیشتر ماشین آلات، سطح پایین موجودی و کاهش هزینه های سربار است.

تولید ناب بر این اساس کار می کند که محصول با کیفیت، لزوما با هزینه های بالا تولید نمی شود. در روش تولید ناب، هزینه های سربار، به ویژه هزینه های غیر مستقیم با رعایت استاندارد های کیفیتی و پایین آوردن زمان چرخه تولید، خود به خود کاهش می یابد.ا تولید ناب با استفاده از کارکنان ماهر در تمام سطوح سازمان و ماشین آلات چند منظوره که توانایی تولید محصولات مختلف را دارند، قیمت کالای تولیدی را کاهش داده و محصولاتی را تولید کنند که مورد نیاز و خواست مشتریان باشد.

اهداف تولید ناب:هدف تولید انبوه خوب بودن در حد کفایت است، به این مفهوم که در هر تولید باید تعدادی ناقص و یا سطحی از موجودی ها وجود داشته باشد. اما هدف تولید ناب کمال است. این کمال مبتنی بر کاهش پیوسته قیمتها، به صفر رساندن میزان نواقص و موجودی و همچنین افزایش تنوع محصولات است.مهمترین هدف تولید ناب افزایش رضایت مشتری و کاهش اتلاف است.

 ویژگی های تولید ناب در شرکت ساسان دژ:

1- بازنگری در چرخه تولید

2- اطلاع دقیق از نیاز بازار

3- افزایش توانایی شرکت برای تامین نیاز بازار با توجه به منابع مالی

4- تکنولوژی متفاوت

5- نیروی انسانی ماهر

مزایای تولید ناب:

1-حداقل اتلاف در انرژی،مصالح و دستمزد با ایجاد امکانات مورد نیاز در خط تولید

2- حداقل سرمایه گردش با کمترین موجودی مواد اولیه

3- سرعت عمل در تعویض قالب ها و کارگران

4- حذف محصولات معیوب از سیستم تولید و کاهش ضایعات

5- کاهش قیمت، افزایش کیفیت ها و تحویل به موقع محصول

6- انعطاف بیشتر در پاسخگویی به تغییرات

7- سود بیشتر

8- کاهش زمان تولید

 

تولید ناب:
زادگاه تولید ناب در شرکت تویوتا (پی نوشت 1) در جزیره ناگویا در ژاپن است. نخستین پیروزی خانواده تویودا در صنعت ماشین آلات نساجی بود و در دهه 1930 به دلیل نیاز شدید دولت شرکت مذکور وارد صنعت وسایل نقلیه موتوری گردید. در آن سال ها این شرکت با مشکلاتی از قبیل بازار داخلی کوچک، نیروی کار ثابت، فقدان سرمایه کافی و رقبای خارجی علاقه مند به بازار ژاپن روبرو بود.

در آن سال ها، آی جی تویودا (EIJI TOYODA) با مهندس شرکت تاای چی اوهنو به آمریکا سفر کرده و از شرکت اتومبیل سازی فورد بازدید به عمل آوردند و نهایتا به این نتیجه رسیدند که اصول تولید انبوه قابلیت پیاده سازی در ژاپن را ندارد و این سیستم پر از مودا MUDA (اتلاف) است. بر همین اساس، آنها شیوه جدید از تولید که بعدها تولید ناب نام گرفت را ایجاد کردند.

یک تولیدگر ناب مزایای تولید دستی و تولید انبوه را با یکدیگر تلفیق کرده و از قیمت بالای اولی و انعطاف ناپذیری دومی اجتناب می کند و از ماشین آلاتی استفاده می کند که هم خودکار و هم انعطاف پذیرند. برخی از مشخصه های تولید ناب عبارتند از:

1- استفاده از JIT.
2- تأکید بر پیشگیری از تولید محصول معیوب.
3- پاسخ به نیازهای مشتریان.
4- کایزن.
5- سیستم افقی ارتباطات.
6- افزایش ادغام وظایف.

اما مهم ترین تفاوت میان تولید انبوه و تولید ناب، تفاوت در اهداف نهایی این دو روش است. تولیدگر انبوه هدف محدودی که "به اندازه کافی خوب بودن" است را دارد و به عبارتی دیگر: "شمار قابل قبول عیب ها"، و همچنین بیشترین سطح قابل قبول برای موجودی و گستره معینی از محصولات یکسان. اما اندیشه تولیدکننده ناب بر "کمال"است، یعنی نزول پیوسته قیمت ها، به صفر رساندن میزان عیوب، به صفر رساندن موجودی و تنوع بی پایان محصول!

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