آموزش منطق و مقدمات برنامه نویسی به همراه الگوریتم و فلوچارت آموزش منطق و مقدمات برنامه نویسی به همراه الگوریتم و فلوچارت
021-88146330
021-88146323
0

سبد خرید شما خالی است!

هم سو با آینده

اخبار فناوری و هوش مصنوعی

ورود / ثبت‌نام

ورود کاربر جدید هستید؟ ثبت نام کنید
بستن تبلیغات
دوره تسلط بر پایتون ؛ آموزش پروژه محور برای حرفه ای ها

با آموزش حضوری و آنلاین مقدماتی تا پیشرفته پایتون , محبوب‌ترین زبان برنامه‌نویسی دنیا در محیطی عملی کاربردی و پروژه محور وارد دنیای برنامه نویسی شوید

مشاهده بیشتر
شروع مسیر هوش مصنوعی با دوره یادگیری ماشین پروژه‌محور!

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

مشاهده بیشتر
یادگیری عمیق از پایه تا پیشرفته، همراه با پروژه‌های واقعی!

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

مشاهده بیشتر
دوره پروژه محور آموزش جنگو

با این دوره، Django رو از پایه شروع کن و به یک حرفه‌ای تبدیل شو! یاد بگیر چطور با معماری MVT، پایگاه داده و RESTful API کار کنی، پروژه‌های واقعی بسازی و آن‌ها رو روی وب سرور مستقر کنی!

مشاهده بیشتر
دسته بندی
ChatGPT

آموزش ساخت برنامه با ChatGPT

آموزش ساخت برنامه با ChatGPT

در دنیای متحول شده تکنولوژی امروز، ابزارهای نوآورانه‌ای مانند ChatGPT، امکانات بی‌شماری را برای برنامه‌نویسان و توسعه‌دهندگان نرم‌افزار فراهم می‌آورند. ChatGPT نه تنها در حل چالش‌ها، تولید محتوا و ارائه کمک‌های برنامه‌نویسی به شما یاری می‌رساند، بلکه امکان استفاده از آن در ساخت اپلیکیشن‌های کاربردی نیز میسر است. این مقاله شما را با روند گام به گام ساخت یک اپلیکیشن ابتدایی با استفاده از ChatGPT همراه می‌سازد. ما نه تنها فرآیند ساخت این اپلیکیشن را تشریح می‌کنیم، بلکه روش تبدیل آن به فایل APK را نیز به شما آموزش می‌دهیم تا بتوانید آن را بر روی دستگاه‌های اندرویدی خود نصب کنید، با همکارانتان به اشتراک بگذارید و حتی آن را در فروشگاه Play منتشر کنید.

گام ۱: تصمیم‌گیری در مورد نوع برنامه

قبل از هر چیز، باید تصمیم بگیرید که چه نوع برنامه‌ای می‌خواهید بسازید. داشتن یک ایده واضح می‌تواند فرآیند توسعه را تسهیل بخشد. فرض کنید تصمیم گرفته‌اید یک بازی ساده مانند بازی ایکس و صفر (Tic-Tac-Toe) بسازید. این یک انتخاب عالی برای شروع است، زیرا نیازمند ترکیبی از HTML، CSS و JavaScript برای ایجاد یک بازی واکنش‌پذیر و سازگار با دستگاه‌های مختلف است.

گام ۲: طراحی ساختار با ChatGPT

درخواست شما از ChatGPT باید به وضوح تعریف کند که چه انتظاراتی از این ابزار دارید. به عنوان نمونه، اگر می‌خواهید یک برنامه بسازید که بازی ایکس-و-صفر را برای موبایل اجرا کند، باید مراحل مورد نیاز خود را به طور دقیق بیان کنید: ایجاد ساختار HTML، طراحی با استایل‌های واکنش‌گرا در CSS، و پیاده‌سازی منطق بازی با JavaScript. این بازی باید به گونه‌ای طراحی شود که نه تنها در دستگاه‌های موبایل، بلکه در مرورگرهای دسکتاپ نیز به طور کامل واکنش‌گرا باشد.

tic-tac-toe طراحی اپلیکیشن tic tac toe با chatgpt

متن زیر را در chatgpt وارد می کنیم:

"سلام، می‌خواهم یک برنامه بنویسم که یک بازی XO را برای موبایل طراحی کند. این نیازمند سه مرحله است: تنظیم ساختار HTML، اعمال استایل‌های واکنش‌پذیر CSS و پیاده‌سازی منطق بازی با جاوااسکریپت. این بازی باید به طور کامل واکنش‌پذیر باشد و برای تلفن همراه و مرورگرهای دسکتاپ مناسب باشد."

بهینه سازی بازی

کدهای بازی XO

پیاده‌سازی بازی ایکس او واکنش‌گرا با HTML، CSS، و JavaScript

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

چت جی‌پی‌تی

بیایید به چت جی‌پی‌تی بازگردیم. ابتدا کد HTML را کپی کرده و اینجا قرار دهید. سپس، همین مراحل را برای کد CSS و جاوا اسکریپت نیز انجام دهیم.

کدپن

وقتی کد را جایگذاری کردید، اگر این بخش را بالا ببریم، می‌توانید پیش‌نمایش بازی ما را ببینید.

پیش نمایش بازی

پس بیایید آن را تست کنیم. همانطور که می‌بینید، بازی کاملاً درست کار می‌کند

تست بازی

برای بهبود تجربه بازی Tic-tac-toe و افزایش جذابیت آن، چندین اقدام اساسی را می‌توان انجام داد. در ابتدا، تمرکز بر روی زیباسازی ظاهر بازی است؛ بنابراین، اولین قدم تغییر رنگ پس‌زمینه به یک گرادیان جذاب و ملایم است. در ادامه، برای افزایش تعامل با کاربر، افزودن یک پنجره پاپ‌آپ برای نمایش برنده بازی و همچنین ارائه یک دکمه برای آغاز مجدد بازی ضروری به نظر می‌رسد. به این منظور، از قابلیت‌های ChatGPT برای تولید مجدد کد با تغییرات درخواستی استفاده می‌کنیم. پس از دریافت کد به‌روزرسانی شده، مراحل زیر را دنبال کنید تا بازی خود را به نسخه بهینه‌سازی شده ارتقا دهید:

  1. بهینه سازی کد HTML: کد HTML جدید را کپی کرده و در محیط کدنویسی خود (مانند CodePen یا هر ویرایشگر دیگری) جایگزین کد قدیمی نمایید.
  2. ارتقا CSS: همین فرآیند را برای کد CSS انجام دهید تا طراحی ریسپانسیو و زیبایی بازی به دست آید.
  3. توسعه JavaScript: کد JavaScript را نیز با نسخه جدید جایگزین کنید تا منطق بازی به‌روز و ویژگی‌های جدید افزوده شده قابل استفاده باشند.

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

بهینه سازی بازی

در این مرحله، پس از دریافت کد بازی XO از چت جی‌پی‌تی و آزمایش آن، زمان آن رسیده است که کدهای مورد نظر را برای استفاده‌های بعدی در کامپیوتر خود ذخیره کنیم. این فرآیند ساده و سریع انجام می‌شود و به شما امکان می‌دهد هر زمان که خواستید، به راحتی به کدهای خود دسترسی داشته باشید. برای این کار، تنها به چند قدم ساده نیاز دارید:

ابتدا برنامه نوت‌پد (Notepad) را بر روی سیستم خود باز کنید. این برنامه به صورت پیش‌فرض بر روی تمام سیستم‌های ویندوز نصب شده است.سپس کد HTML مورد نظر را که از چت جی‌پی‌تی دریافت کرده‌اید، به دقت کپی کنید.پس از کپی کردن کد، به نوت‌پد بازگشته و کد را در آنجا جایگذاری کنید.

ذخیره کد HTML

برای ذخیره فایل، بیایید یک پوشه جدید ایجاد کنیم و به آن نام دهیم. سپس فایل را به عنوان index.html ذخیره کنید زیرا تنها در این صورت برنامه ما به درستی کار خواهد کرد.

index.html ذخیره

به همین ترتیب، یک فایل جدید باز کنید، سپس کد CSS را کپی کنید و آن را اینجا جایگذاری کنید. سپس این فایل را همانطور که اینجا ذکر شده، ذخیره کنید که style.css است.

css ذخیره

دوباره، یک فایل جدید باز کنید، این کد جاوا اسکریپت را کپی کنید و آن را اینجا جایگذاری کنید. سپس آن را به عنوان script.js ذخیره کنید.

script.js ذخیره

حالا که کار پیاده‌سازی بازی تمام شده است، می‌توانیم آن را به صورت لوکال اجرا کنیم. برای این کار، کافی است به پوشه‌ای که ایجاد کرده‌اید بروید. سپس فایل index.html را با استفاده از یک مرورگر وب باز کنید. این کار به شما امکان می‌دهد تا بازی XO واکنش‌گرایی که با زبان‌های HTML، CSS، و JavaScript پیاده‌سازی کرده‌اید را مشاهده و تجربه کنید.

ذخیره لوکال

بازی در مرورگر شما به صورت لوکال اجرا می‌شود. کد مورد نظر را بر روی کامپیوتر خود ذخیره کرده‌اید و اکنون برنامه به طور کامل و بدون مشکل کار می‌کند.

اجرا در مرورگر

می‌خواهم روشی را به شما معرفی کنم که امکان تبدیل این برنامه به یک اپلیکیشن موبایل را فراهم می‌آورد. این اپلیکیشن قابل نصب بر روی دستگاه‌های اندرویدی بوده و می‌توانید آن را با دوستانتان به اشتراک بگذارید یا حتی در فروشگاه گوگل پلی منتشر کنید. برای تبدیل برنامه به نسخه‌ی موبایل، اولین گام آپلود آن به صورت آنلاین است. در این مسیر، قصد داریم از سرویس " tiiny.host " استفاده کنیم.

پس فقط روی لینک https://tiiny.host/ کلیک کنید و این شما را به این وب‌سایت می‌برد.

tiiny.host

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

tictactoegame

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

drag&drop

حالا روی گوگل کلیک کنید، سپس وارد حساب گوگل خود شوید

google register

وب‌سایت ما اکنون به صورت آنلاین و در دسترس است. با کلیک بر روی دکمه "مشاهده سایت"، شما قادر خواهید بود تا پروژه‌مان را که حالا بر فضای اینترنت مشاهده نمایید. این امکان برای ما فراهم آمده است که پروژه‌مان را با هر کسی در سراسر جهان به اشتراک بگذاریم.

site-live

با موفقیت مراحل میزبانی برنامه‌مان در فضای آنلاین را پشت سر گذاشته‌ایم. حال که به این مرحله رسیدیم، زمان آن فرا رسیده تا به سراغ تبدیل برنامه وب به اپلیکیشن موبایل برویم. برای انجام این تبدیل، تصمیم داریم از ابزاری به نام " app-maker " استفاده کنیم که استفاده از آن کاملاً رایگان است. کافی است بر روی لینک https://www.webintoapp.com/app-maker کلیک کنید تا مستقیماً به این وب‌سایت هدایت شوید.

برای وارد کردن آدرس اینترنتی برنامه‌تان، ابتدا به برنامه خود مراجعه کنید. سپس آدرس اینترنتی را کپی کرده، بازگردید و آن را در این قسمت قرار دهید. در مرحله بعد، نامی برای برنامه‌تان انتخاب و وارد نمایید.

app-maker

برای افزودن آیکون به برنامه‌تان، ابتدا بر روی گزینه icon کلیک کنید. سپس، آیکون مورد نظرتان را انتخاب کنید تا به برنامه اضافه شود

انتخاب ایکون

اگر هنوز آیکونی برای برنامه‌تان انتخاب نکرده‌اید، می‌توانید از وب‌سایت flaticon دیدن کنید تا آیکون مناسبی پیدا کنید. پس از انتخاب و اضافه کردن آیکون به برنامه‌تان، برای ادامه فرآیند، روی دکمه‌ی ساخت برنامه کلیک کرده و اطلاعات مورد نیاز را وارد نمایید.

ساخت برنامه

روی ثبت نام کلیک کنید و دوباره روی ساخت برنامه کلیک کنید. همانطور که می‌بینید، ما برنامه وب خود را به یک برنامه موبایل تبدیل کرده‌ایم.

ساخت برنامه

پس از تکمیل، شما قادر خواهید بود برنامه را دانلود نمایید. کافی است اینجا کلیک کرده، گزینه دانلود را انتخاب نموده و سپس بر روی دانلود تمام فایل‌ها کلیک کنید تا برنامه بر روی کامپیوتر شما ذخیره شود.

 دانلود برنامه

در حال نزدیک شدن به پایان هستیم، پس بیایید بازی XO را روی تلفن همراه خود نصب کنیم. برای این منظور، ابتدا نیاز داریم که فایل زیپ دانلود شده را روی کامپیوتر خود باز کنیم. ابتدا فایل دانلودی را پیدا کنید، سپس با کلیک راست بر روی آن، گزینه‌ی Extract to را می کنیم تا فایل‌ها آماده استفاده شوند. در صورت باز کردن این دایرکتوری و سپس دسترسی به پوشه اندروید، شما قادر خواهید بود فایل APK را در آن مشاهده کنید.

 فایل apk

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

 نصب موبایل 3  اجرای برنامه در موبایل  نصب موبایل 2  نصب موبایل

نتیجه گیری:

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

کدهای بازی Tic-tac-toe

1. HTML:


    < !DOCTYPE html >
< html lang="fa">
< head>
    < meta charset="UTF-8">
    < meta name="viewport" content="width=device-width, initial-scale=1.0">
    < title>بازی دوز< /title>
    < link rel="stylesheet" href="style.css">
< /head>
< body>
    < div id="gameContainer" class="game-container">
        < div id="gameBoard" class="board">< /div>
        < button id="restartButton" class="restart-button">بازی جدید< /button>
    < /div>
    < div id="gameOverScreen" class="game-over-screen hidden">
        < div id="winnerMessage" class="winner-message">< /div>
        < button id="newGameButton" class="new-game-button">بازی جدید< /button>
    < /div>
    < script src="script.js">< /script>
< /body>
< /html>

2. CSS:

body, html {
    margin: 0;
    padding: 0;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Arial', sans-serif;
    background: linear-gradient(to right, #57c1eb, #246fa8); /* گرادیان خطی */
}

.game-container, .game-over-screen {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.board {
    display: grid;
    grid-template-columns: repeat(3, 100px);
    grid-gap: 10px;
    margin-bottom: 20px;
}

.board div {
    width: 100px;
    height: 100px;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2em;
    cursor: pointer;
}

.hidden {
    display: none;
}

.game-over-screen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    color: #fff;
    justify-content: center;
}

.winner-message, .restart-button, .new-game-button {
    margin: 20px;
    padding: 10px 20px;
    font-size: 1.5em;
    cursor: pointer;
}

3. Javascript:

document.addEventListener('DOMContentLoaded', () => {
    const gameBoard = document.getElementById('gameBoard');
    const gameOverScreen = document.getElementById('gameOverScreen');
    const winnerMessage = document.getElementById('winnerMessage');
    const newGameButton = document.getElementById('newGameButton');
    const restartButton = document.getElementById('restartButton');

    let currentPlayer = 'X';
    let board = ['', '', '', '', '', '', '', '', ''];

    const winningCombinations = [
        [0, 1, 2], [3, 4, 5], [6, 7, 8],
        [0, 3, 6], [1, 4, 7], [2, 5, 8],
        [0, 4, 8], [2, 4, 6]
    ];

    function initGame() {
        for (let i = 0; i < 9; i++) {
            let cell = document.createElement('div');
            cell.addEventListener('click', () => cellClicked(i));
            gameBoard.appendChild(cell);
        }
    }

    function cellClicked(index) {
        if (board[index] !== '') return;
        board[index] = currentPlayer;
        updateBoard();
        checkWinner();
    }

    function updateBoard() {
        for (let i = 0; i < 9; i++) {
            gameBoard.children[i].textContent = board[i];
        }
        currentPlayer = currentPlayer === 'X' ? 'O' : 'X';
    }

    function checkWinner() {
        let roundWon = false;
        for (let i = 0; i < winningCombinations.length; i++) {
            const winCondition = winningCombinations[i];
            const a = board[winCondition[0]], b = board[winCondition[1]], c = board[winCondition[2]];
            if ([a, b, c].includes('')) continue;
            if (a === b && b === c) {
                roundWon = true;
                break;
            }
        }

        if (roundWon) {
            gameOverScreen.classList.remove('hidden');
            winnerMessage.textContent = `بازیکن ${currentPlayer} برنده شد!`;
            return;
        }

        if (!board.includes('')) {
            gameOverScreen.classList.remove('hidden');
            winnerMessage.textContent = 'مساوی!';
        }
    }

    function restartGame() {
        board = ['', '', '', '', '', '', '', '', ''];
        currentPlayer = 'X';
        updateBoard();
        gameOverScreen.classList.add('hidden');
    }

    restartButton.addEventListener('click', restartGame);
    newGameButton.addEventListener('click', restartGame);

    initGame();
});

نظرات شما

برای ارسال سوال لازم است، ابتدا وارد سایت شوید.