PDA

View Full Version : چطور میتونم سورس کد رو بهم ریخته کنم ؟



dr_csharp
یک شنبه 30 دی 1386, 10:06 صبح
سلام
دوستان من میخوام source code خودم رو در اختیار فرد دیگه ای بگذارم .. میخوام کدم درست کار کنه ولی بهم ریخته باشه و کمی واسه طرف نا مفهوم باشه !
راه حلی هست ؟

hassan razavi
یک شنبه 30 دی 1386, 10:30 صبح
با سلام خدمت دوست عزیزم
اگر می تونی کلاه سرش بزاری ، تا جایی که می تونی از اسمبلی (dll) استفاده کنید . کلاس هاتون رو بصورت class library بنویسید و کامپایل کنید و در کد برنامتون از خروجی آنها استفاده کنید. اینجوری هم کدتون کار میکنه و هم داشتن dll تنها بدون کدش در کنار برنامه هم کافیه.

Mahdi.Kiani
یک شنبه 30 دی 1386, 10:45 صبح
سلام
دوستان من میخوام source code خودم رو در اختیار فرد دیگه ای بگذارم .. میخوام کدم درست کار کنه ولی بهم ریخته باشه و کمی واسه طرف نا مفهوم باشه !
راه حلی هست ؟

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

می تونی کلی هم document بیخودی اون وسط مسطا بذاری که طرف حالشو ببره

مثال




namespace WindowsApplication1 { partial class Form1 { private System.ComponentModel.IContainer components = null; protected override void Dispose(bool disposing) { if (disposing && (components != null)) { components.Dispose(); } base.Dispose(disposing); } private void InitializeComponent() { this.button1 = new System.Windows.Forms.Button(); this.button2 = new System.Windows.Forms.Button(); this.label1 = new System.Windows.Forms.Label(); this.listBox1 = new System.Windows.Forms.ListBox(); this.checkBox1 = new System.Windows.Forms.CheckBox(); this.SuspendLayout(); this.button1.Location = new System.Drawing.Point(88, 26); this.button1.Name = "button1"; this.button1.Size = new System.Drawing.Size(75, 23); this.button1.TabIndex = 0; this.button1.Text = "button1"; this.button1.UseVisualStyleBackColor = true; this.button2.Location = new System.Drawing.Point(47, 73); this.button2.Name = "button2"; this.button2.Size = new System.Drawing.Size(75, 23); this.button2.TabIndex = 1; this.button2.Text = "button2"; this.button2.UseVisualStyleBackColor = true; this.label1.AutoSize = true; this.label1.Location = new System.Drawing.Point(44, 128); this.label1.Name = "label1"; is.label1.Size = new System.Drawing.Size(35, 13); this.label1.TabIndex = 2; this.label1.Text = "label1"; this.listBox1.FormattingEnabled = true; this.listBox1.Location = new System.Drawing.Point(160, 115); this.listBox1.Name = "listBox1"; this.listBox1.Size = new System.Drawing.Size(120, 95); this.listBox1.TabIndex = 3; this.checkBox1.AutoSize = true; this.checkBox1.Location = new System.Drawing.Point(187, 62); this.checkBox1.Name = "checkBox1"; this.checkBox1.Size = new System.Drawing.Size(80, 17); this.checkBox1.TabIndex = 4; this.checkBox1.Text = "checkBox1"; this.checkBox1.UseVisualStyleBackColor = true; this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(292, 266); this.Controls.Add(this.checkBox1); this.Controls.Add(this.listBox1); this.Controls.Add(this.label1); this.Controls.Add(this.button2); this.Controls.Add(this.button1); this.Name = "Form1"; this.Text = "Form1"; this.ResumeLayout(false); this.PerformLayout(); System.Windows.Forms.Button button1; private System.Windows.Forms.Button button2; private System.Windows.Forms.Label label1; private System.Windows.Forms.ListBox listBox1; private System.Windows.Forms.CheckBox checkBox1; } }




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

sinpin
یک شنبه 30 دی 1386, 10:49 صبح
سلام
دوستان من میخوام source code خودم رو در اختیار فرد دیگه ای بگذارم .. میخوام کدم درست کار کنه ولی بهم ریخته باشه و کمی واسه طرف نا مفهوم باشه !
راه حلی هست ؟
بنظر من بهترین راه همونیه که آقای رضوی گفتند.
قسمتهای حیاتی کد رو بصورت اسمبلی در بیارید و اسمش رو هم بزارید فرضا kernel33.dll (!) و بزارید کنار برنامه بمونه.

Mahdi.Kiani
دوشنبه 01 بهمن 1386, 13:42 عصر
سلام
دوستان من میخوام source code خودم رو در اختیار فرد دیگه ای بگذارم



با سلام خدمت دوست عزیزم
اگر می تونی کلاه سرش بزاری ، تا جایی که می تونی از اسمبلی (dll) استفاده کنید . کلاس هاتون رو بصورت class library بنویسید و کامپایل کنید و در کد برنامتون از خروجی آنها استفاده کنید. اینجوری هم کدتون کار میکنه و هم داشتن dll تنها بدون کدش در کنار برنامه هم کافیه.

خوب اونوقت که دیگه بهش نمی گن سورس کد..اگه بنا به این باشه که اسمبلی بشن خوب یه باره میشه اون اسمبلی ها را هم embed کرد که دیگه خیال آدم راحت باشه



اسمش رو هم بزارید فرضا kernel33.dll (!) و بزارید کنار برنامه بمونه.

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

اَرژنگ
دوشنبه 01 بهمن 1386, 14:21 عصر
سلام
دوستان من میخوام source code خودم رو در اختیار فرد دیگه ای بگذارم .. میخوام کدم درست کار کنه ولی بهم ریخته باشه و کمی واسه طرف نا مفهوم باشه !
راه حلی هست ؟

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

dr_csharp
دوشنبه 01 بهمن 1386, 14:41 عصر
از تک تک دوستان بابت نظراتشون ممنونم :لبخندساده:

sinpin
دوشنبه 01 بهمن 1386, 16:30 عصر
اگر ترستان از این است که به شما دیگر احتیاج نداشته باشند، دانشتان را قویتر کنید و بیشتر کارامد باشید، در اون صورت اگر هم که همیشه تمام کد را با تمام توضیحات کامل تحویل بدید بازهم تحویلتان میگیرند.
کاملا موافقم - ضمن اینکه فکر نمیکنم برنامه های فعلی اونقدر کوچیک باشند (و یا استاندارد نوشته شده باشند) که واسه کسی صرف کنه که بخواد ازشون سر در بیاره...


اگر با کارهایه نادرست بخواهید ادمه بدید، اول از اینکه شده با وکیل و دادگاه هم که شده سورس واقعی را ازتان بگیرندفکر نمیکنم مورد دوستمون اینقدر حاد باشه. (من حدس زدم که یک مورد دانشجویی باشه)
اما در کل حرف ارژنگ خان کاملا صحیح است. اگه توی قرارداد چیزی رو امضا کردید که حتی الان به ضرر شماست باز ملزم به اجرای اون هستید. وگرنه که همون : kernel33.dll


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

mohammadkhan
دوشنبه 01 بهمن 1386, 16:44 عصر
جناب دکتر سی شارپ، فکر نکنم بخواهید این پروژه و سورس مربوطه رو به استاد تحویل بدین چون استادهای کامپیوتر مخصوصا برنامه نویسی با یک نگاه میفهمن که دانشجو برنامه نویس هست یا نه؟؟

احتمالا دوستتون قراره این پروژه رو تحویل بده که یا نمیتونه و یا وقت نکرده خودش پروژه رو بنویسه و از شما خواسته کمکش کند و شما هم توی رودروایسی قرار گرفتید و بهش قول مساعدت دادین. الان میترسین پروژه خودتون لوث بشه و استاد بفهمه و نمره ای گیرتون نیاد و ..... (چه داستانی شد !!) البته اینش به من ربط نداره ولی چون همین بلا سر خودم اومده گفتم یه نقل قولی هم کرده باشم. من خودم اینکار کردم:

تا تونستم برنامه ام و با کلاس (نه اون کلاس ها !!) نوشتم. از Class Library استفاده کردم. از کامنتها نهایت استفاده رو بردم و حتی برای معرفی متغیری مثل x از کامنت استفاده کردم.. اسامی کلاسها و متغیرها و فرمها و .... نامهایی انتخاب کردم که نه به موصوع پروژه ربط داشت و نه حتی به هیچ موضوعی از کامپیوتر و برنامه نویسی !!! اسامی ای را نوشتم که قابل حدس توسط طرف دیگه نبود. مثلا این کلاس چیکار میکنه و .... از region و #region استفاده کردم و همه شون رو هم Collapse کردم.

ولی خداییش اگه رفیقت تا اینقدر متوجه موضوع نشه و پروژه رو هم واسه همون حدس اولیه من بخواد باشه (و اگر دانشجو هم باشه) بهش بگو بره بشینه سر کلاسهای مرتع و آبخیزداری. در ضمن جناب ارژنگ، من اگه جای دکتر سی شارپ بودم احتمالا الان از زندگی سیر شده بودم!!!!

sinpin
دوشنبه 01 بهمن 1386, 17:18 عصر
استادهای کامپیوتر مخصوصا برنامه نویسی با یک نگاه میفهمن که دانشجو برنامه نویس هست یا نه؟؟اگه منظورتون از استاد همون موجودیتهای برتر دانشگاهی است؛ باید بگم که ایکاش حق با شما باشه...!


از region و #region استفاده کردم و همه شون رو هم Collapse کردم. و اینجاست که security بیداد میکند !

mohammadkhan
دوشنبه 01 بهمن 1386, 17:30 عصر
اگه منظورتون از استاد همون موجودیتهای برتر دانشگاهی است؛ باید بگم که ایکاش حق با شما باشه...!


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



و اینجاست که security بیداد میکند !


متاسفانه متوجه منظورتون نشدم

Mahdi.Kiani
دوشنبه 01 بهمن 1386, 18:24 عصر
اگه منظورتون از استاد همون موجودیتهای برتر دانشگاهی است؛ باید بگم که ایکاش حق با شما باشه...!

و اینجاست که security بیداد میکند !


متاسفانه متوجه منظورتون نشدم[/QUOTE]

منظورشون اینه که با استفاده از Region دیگه به هیچ عنوان کد قابل نمایش نیست !!!! :بامزه::لبخند:
راستی چرا این به فکر تولید کنند گان نرم افزار هایی همچون dotnet reactor و ... نیومده؟؟؟

اینا همش شوخی بود ....:چشمک:
خوب expand کردن region ها فکر نکنم اونقدرا سخت باشه !!!!:متفکر:

Mahdi.Kiani
دوشنبه 01 بهمن 1386, 18:26 عصر
داستان چی هست؟ متوکل شدن به همچین راههایی از برنامه نوییس واقعی به دور است. اگر قراردادتان از همان اول این بوده که همه چی را تحویل بدید، باید همه چی را تحویل بدید. اگر هم که نه ، فقط چیزهایی را که باید تحویل داد تحویل بدید. اگر ترستان از این است که به شما دیگر احتیاج نداشته باشند، دانشتان را قویتر کنید و بیشتر کارامد باشید، در اون صورت اگر هم که همیشه تمام کد را با تمام توضیحات کامل تحویل بدید بازهم تحویلتان میگیرند. اگر با کارهایه نادرست بخواهید ادمه بدید، اول از اینکه شده با وکیل و دادگاه هم که شده سورس واقعی را ازتان بگیرند، اسم خودتان را هم بد میکنید. خیالتان راحت باشد ، دست از دست بالاتر فراوان است، و هر دوز و کلک را بالاخره یکی پیدا میشه که برملا کند. توصیه من اینست که سورس کامل را با مدارک کامل در اختیارشان قرار بدید، سطح خودتان را هیچ وقت پائین نبرید (با اینکار سطح تمام برنامه نویسان را دارید پائین میبرید، وقتی که بفهمند چکار کردید فکر میکنند همه برنامه نویسا شارلاطانند) . اگر اسم خوبی برایه خودتان داشته باشید همیشه یکی هست که داوطلب تخصصات شما باشد، مشکل اصلی پیدا کردن برنامه‌نویس قابل اطمینان است (همینطوری هم که خودتان شاهدید).

همه حرفهاتون درسته آرژنگ خان
مشکل اینجاست که این دوستمون اصلا نگفت به چه دلیل می خواد این کار را بکنه
خوب طبیعتا در مورد چنین سوالی و بدون هیچ گونه توضیحی بایستی یک چنین جواب هایی دریافت شود

mohammadkhan
سه شنبه 02 بهمن 1386, 18:05 عصر
خوب expand کردن region ها فکر نکنم اونقدرا سخت باشه !!!!:متفکر:

دوست عزیز من نگفتم این کار سخته فقط تجربه ای که خودم داشتم و جواب داد !!!! رو گفتم.
در ضمن این دوست ما سورس رو میخواد به کسی بده که نمیتونه برنامه بنویسه. پس مطمئنا از وجود region هم خبر نداره.



همه حرفهاتون درسته آرژنگ خان
مشکل اینجاست که این دوستمون اصلا نگفت به چه دلیل می خواد این کار را بکنه
خوب طبیعتا در مورد چنین سوالی و بدون هیچ گونه توضیحی بایستی یک چنین جواب هایی دریافت شود


خدایی نکرده من نگفتم حرفهای جناب آرژنگ اشتباس. منظورم این بود بنده خدا میخواد یه سورس رو دستکاری کنه و به رفیقش بده تا کار دوستشو راه بندازه، تازه اونی که باید مجازات !!! بشه اونیه که سورس رو میخواد، جناب آرژنگ خیلی سخت با قضیه برخورد کردن. همین. بهرحال شرمنده

اَرژنگ
چهارشنبه 03 بهمن 1386, 00:28 صبح
ای بابا! ارژنگ خان (نه خانی آمده و نه خانی رفته) مخلص همه شما هست و همیشه هم خیلی از حرفاش اشتباس! هرکی هم که بگه اشتباس خوب گفته! خصوصا در مواردی که دلیل و مدرک داده نشده و نظرات شخصی فقط بازگو شده. دلیل اینکه با سختی با قضیه برخورد کردم این بود که قطبی ترین ایده ها بیان بشند، بعدش هم یکمقداری سینتزیس میکنیم (Thesis, AntiThesis, Synthesis) و به یک نتیجه میرسیم.

application_13
چهارشنبه 03 بهمن 1386, 00:40 صبح
سلام به تمامی دوستان.
به نظرتون به جای اینکه بشینیم در مورده اینکه پروژه این دوستمون میخواد بره دست استادش یا هرچی بهتر نیست در مورده سوالش

میخوام کدم درست کار کنه ولی بهم ریخته باشه و کمی واسه طرف نا مفهوم باشه !
فکر کنیم و یه راه حل خوب پیدا کنیم؟

اَرژنگ
چهارشنبه 03 بهمن 1386, 05:08 صبح
سلام به تمامی دوستان.
به نظرتون به جای اینکه بشینیم در مورده اینکه پروژه این دوستمون میخواد بره دست استادش یا هرچی بهتر نیست در مورده سوالش

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

application_13
چهارشنبه 03 بهمن 1386, 23:48 عصر
سلام.
به نظره من راه حل آقای رضوی:

با سلام خدمت دوست عزیزم
اگر می تونی کلاه سرش بزاری ، تا جایی که می تونی از اسمبلی (dll) استفاده کنید . کلاس هاتون رو بصورت class library بنویسید و کامپایل کنید و در کد برنامتون از خروجی آنها استفاده کنید. اینجوری هم کدتون کار میکنه و هم داشتن dll تنها بدون کدش در کنار برنامه هم کافیه.
تا اینجا از همه بهتره.

sinpin
پنج شنبه 04 بهمن 1386, 00:17 صبح
یک کار کثیف (!) هم میتونید انجام بدید. برنامه که تموم شد (و بعد از اینکه یک backup واسه خودتون گرفتید) به کمک find و replace بیاین و تمامی متغیرها، اینترفیس، کلاسها و ... همه رو بدون استثناء به یک شکل اسم گذاری کنید :

int xdhff_71_6_32;
public class xdhff_71_6_33
public interface xdhff_71_6_34و یا حتی برای اعداد و مقدار دهی متغیرها هم اینکار رو انجام بدید. مثلا به جای نوشتن عبارت :

int i = 0;
for (j=0 ; j<n ; j++)بنویسید :

int xdhff_71_6_35 = 3 * 2 + 1 - 5 - 1 - 1;
for (xdhff_71_6_36=3 * 2 + 1 - 5 - 1 - 1 ; j<n ; j+=1+2+3-5)خوبیش اینه که فقط با 3 دقیقه find و replace کردن میتونید آشی بپزید که خودتون هم نتونید چیزی ازش بخورید !
اگر هم پرسیدند که چرا اینجوریه؛ بفرمایید : "به دلایل شخصی !" :دی :پی
فقط یک ایده بود جهت مزاح

application_13
پنج شنبه 04 بهمن 1386, 00:23 صبح
sinpin (http://barnamenevis.org/forum/member.php?u=6235)
یک کار کثیف (!) هم میتونید انجام بدید.آقا سینا حالا چرا کاره کثیف!!!!؟؟
اینها ایده های جالبی هست که شاید یه روزی بدرد بخوره.
این کاری هم که گفتید جالب بود.

sinpin
پنج شنبه 04 بهمن 1386, 00:29 صبح
آقا سینا حالا چرا کاره کثیف!!!!؟؟
اینها ایده های جالبی هست که شاید یه روزی بدرد بخوره.
این کاری هم که گفتید جالب بود.
چون ما بیشتر یک برنامه نویس هستیم تا یک بقال ! :پی

application_13
پنج شنبه 04 بهمن 1386, 00:34 صبح
درسته که ما برنامه نویس هستیم. ولی یه جاهایی مسایلی پیش میاد که آدم مجبور میشه کاری کنه تا طرف مقابل از کدها سر در نیاره. اگر بخواید میتونم یه مسیله ای رو بگم که اون موقع معلوم میشه بعضی جاها آدم مجبوره این کار ها رو بکنه و میشه گفت منطقی هست.

اَرژنگ
پنج شنبه 04 بهمن 1386, 02:39 صبح
درسته که ما برنامه نویس هستیم. ولی یه جاهایی مسایلی پیش میاد که آدم مجبور میشه کاری کنه تا طرف مقابل از کدها سر در نیاره. اگر بخواید میتونم یه مسیله ای رو بگم که اون موقع معلوم میشه بعضی جاها آدم مجبوره این کار ها رو بکنه و میشه گفت منطقی هست.

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

اگر واقعا میخواهید یک چیزه بی سروته به نام سورس کد تحویل بدید C# Obfuscation را در گوگل جستجو کنید.

application_13
پنج شنبه 04 بهمن 1386, 12:24 عصر
گر قراره که کد را بدیم و طرف از کد سر در نیاره چرا اصلا کد را میدیم؟
این روشهایه مسخره هیچ جایه بکار نمیاد، یا سورس را کامل با توضیحات کامل تحویل داده میشه و یا اینکه نه، من نمیتونم یک سناریو مجسم کنم که بگیم بیا، اینم کد، بعدش هم یک سریه چرندیات را بدیم.
یا کد داده میشه و یا نه، این نوِ مسخره بازی معنی ندارد.
سلام دوست عزیز.
یکی از دوستان من برای جایی کار میکنه که پروژه های دانشجویی رو انجام میدن.
به این صورت که اون برنامه ای می نویسه و یه نمونشو به دانشجو میده و یه نمونشو به جایی که کارو واسش جور کرده.
تا اینجاش مسیله ای نیست. ولی وقتی کسی که کارو پیدا میکنه و شانسش بزنه یه دانشجو دیگه همون کاریو بخواید که قبلا برنامه نویسش انجام داده بده به دانشجو. دیگه به برنامه نویس احتیاج نداره. پاش رو میندازه رو پاش حالشو میبره. بعد برنامه نویسی که کلی کار انجام داده حقش ضایع شده. به نظرت انسافه؟
به نظرت بهتر نیست دوست من کدهای درستش رو بده به خود دانشجو و کدهای نا مفهوم رو بده به کسی که بعد ها می خواد بدون اطلاع برنامه نویس برنامه هارو بده به دیگران.

اَرژنگ
پنج شنبه 04 بهمن 1386, 15:30 عصر
گر قراره که کد را بدیم و طرف از کد سر در نیاره چرا اصلا کد را میدیم؟
این روشهایه مسخره هیچ جایه بکار نمیاد، یا سورس را کامل با توضیحات کامل تحویل داده میشه و یا اینکه نه، من نمیتونم یک سناریو مجسم کنم که بگیم بیا، اینم کد، بعدش هم یک سریه چرندیات را بدیم.
یا کد داده میشه و یا نه، این نوِ مسخره بازی معنی ندارد.سلام دوست عزیز.
یکی از دوستان من برای جایی کار میکنه که پروژه های دانشجویی رو انجام میدن.
به این صورت که اون برنامه ای می نویسه و یه نمونشو به دانشجو میده و یه نمونشو به جایی که کارو واسش جور کرده.
تا اینجاش مسیله ای نیست. ولی وقتی کسی که کارو پیدا میکنه و شانسش بزنه یه دانشجو دیگه همون کاریو بخواید که قبلا برنامه نویسش انجام داده بده به دانشجو. دیگه به برنامه نویس احتیاج نداره. پاش رو میندازه رو پاش حالشو میبره. بعد برنامه نویسی که کلی کار انجام داده حقش ضایع شده. به نظرت انسافه؟
به نظرت بهتر نیست دوست من کدهای درستش رو بده به خود دانشجو و کدهای نا مفهوم رو بده به کسی که بعد ها می خواد بدون اطلاع برنامه نویس برنامه هارو بده به دیگران.

این به انصاف ربطی ندارد! این روشی است که تجارت میکنند، اگر واقعاً‌ انصاف میخواد خودش مستقیما با دانشجوها کار کند، به جایه اینکه با اون شرکتی که براش کار را براش پیدا میکنند. در ثانی من نمیدونم که اگر شما از rentacoder.com خبر دارید و یا نه؟ تمام کارها را باید با سورس کامل و درست تحویل بدند، این روش که سورس کد را بهم بریزه چطوری به کار رفیق شما میاد؟ اگر که نمیخواهد به این وضعیت دچار بشد، در قراردادش باید بنویسد که برایه هر باری که سورسش را میفروشند یک پورسانتی بگیرد. به هر حال این راه حل دوایی را دوا نمیکند، مشکل چیزه دیگری است.

application_13
پنج شنبه 04 بهمن 1386, 15:39 عصر
سلام.
بحث من سر این نیست که بهم ریختن کد کار خوبی هست یا نه.
به نظر من اگه یه برنامه نویس این کارو بلد باشه بد نیست.
شاید یه روزی بدردش خورد.

اَرژنگ
پنج شنبه 04 بهمن 1386, 16:10 عصر
سلام.
بحث من سر این نیست که بهم ریختن کد کار خوبی هست یا نه.
به نظر من اگه یه برنامه نویس این کارو بلد باشه بد نیست.
شاید یه روزی بدردش خورد.

حالا این شد یک سوال دیگری ! و بله دانستن روشهایه مختلف البته که خوب است، اگر میخواد سورس کد را بهم بریزد یک گوگل سرچ C# obfuscation همه جوابها را دارد، C# obfuscation همان چیزی است که دنبالش هستیم ؟ و یا اینکه من هنوز سوال را درست درک نکردم ؟ اگر جوابم اشتباه است و یا سوال و مسئله چیزه دیگریست لطفا تکرار کنید که دنبال جواب درست بگردم.

mohammadkhan
پنج شنبه 04 بهمن 1386, 20:15 عصر
ببخشید پابرهنه پریدم وسط حرفتون
حالا که مدیر نست گیر بده، بزارید من هم یه چیزی بگیم
کلا من ایده های جناب آرژنگ را بیشتر پسنددم
یکی از اصول مدیریت پروژه اینه که صداقت و صمیمیت بین دو طرف پروژه برقرار باشه و چیز رو از هم پنهون نکنن
راستی، یه تاپیک جداگونه بزنیم بهتر نیست؟ بنده خدا اونی که سوال رو پسید فکر کنم میل باکسش الان پر شده.

application_13
جمعه 05 بهمن 1386, 00:00 صبح
ببخشید پابرهنه پریدم وسط حرفتون
حالا که مدیر نست گیر بده، بزارید من هم یه چیزی بگیم
کلا من ایده های جناب آرژنگ را بیشتر پسنددم
یکی از اصول مدیریت پروژه اینه که صداقت و صمیمیت بین دو طرف پروژه برقرار باشه و چیز رو از هم پنهون نکنن
راستی، یه تاپیک جداگونه بزنیم بهتر نیست؟ بنده خدا اونی که سوال رو پسید فکر کنم میل باکسش الان پر شده.
ما هم نگفتیم که کلاه بذاریم سر کسی. صداقت هم همه جا باید باشه تا آدم کارش کامل باشه.
از نظر من یه برنامه نویس باید راه حل های مختلفی برای هرکاری داشته باشه.
حالا به خود شخص برنامه نویس بستگی داره. یا استفاده درست میکنه یا ...