[gnome-devel-docs/wip/dxhackfest2013] Elaborate the first app guide



commit 10e86898da60a24edd662e95b2b9e3ff69cc7ed6
Author: Allan Day <allanpday gmail com>
Date:   Fri Feb 1 10:25:08 2013 +0000

    Elaborate the first app guide
    
    Restructure, add some more material.

 getting-started/C/first-gnome-application.page |   81 +++++++++--------------
 1 files changed, 32 insertions(+), 49 deletions(-)
---
diff --git a/getting-started/C/first-gnome-application.page b/getting-started/C/first-gnome-application.page
index b5a49d7..4f56cd0 100644
--- a/getting-started/C/first-gnome-application.page
+++ b/getting-started/C/first-gnome-application.page
@@ -2,7 +2,7 @@
 <page xmlns="http://projectmallard.org/1.0/";
       xmlns:e="http://projectmallard.org/experimental/";
       type="guide" style="task"
-      id="first-gnome-application.c">
+      id="first-gnome-application">
 
 <info>
   <title type="text">Writing Your First GNOME Application</title>
@@ -19,19 +19,26 @@
 
 <title type="text">Writing Your First GNOME Application</title>
 
-<p>This tutorial will guide you through the steps involved in creating a GNOME application.</p>
+<p>This tutorial will guide you through the steps involved in creating a GNOME application. Following the stages it describes will enable you to produce a high-quality application that provides an excellent experience for GNOME users.</p>
+
+<section id="design">
+<title>1. Design</title>
+
+<p>Design is an important stage in the process of creating an application, and will inform your technical decisions. The GNOME Human Interface Guidelines will assist you in designing your application.</p>
+
+</section>
 
 <section id="setting-up">
-<title>Set Up Your Development Environment</title>
+<title>2. Set Up Your Development Environment</title>
 
 <p>The first stage in creating a GNOME application is to set up your development environment. For this you will need to install GNOME 3 - if you are not using GNOME 3 already, you will need to use it as the environment for developing your application. See the <link href="http://www.gnome.org/getting-gnome/";>Getting GNOME page</link> for information on GNOME 3 distributions.</p>
 
 <p>The following tools are recommended for writing a GNOME application:</p>
 
 <list>
-    <item><p>DevHelp - for viewing and searching API documentation.</p></item>
     <item><p><link href="http://glade.gnome.org/";>Glade</link> - for creating your user interface.</p></item>
     <item><p><link href="http://www.anjuta.org/downloads";>Anjunta</link> - for editing code.</p></item>
+    <item><p>DevHelp - for viewing and searching API documentation.</p></item>
 </list>
 
 <p>All of these tools are available via GNOME 3 distributions. The GNOME wiki contains information for installing development tools for different distributions:</p>
@@ -49,74 +56,50 @@
 </list>
 </section>
 
-<section id="language">
-<title>Language</title>
-
-<p>X is the recommended language for developing GNOME applications. It is also possible to use other languages for your application, including X, Y and Z. However, if you are writing a new application for GNOME, X ... </p>
-</section>
-
-<section id="libraries">
-<title>Libraries</title>
-
-<p>We have libraries. GTK+ is essential. Additional core libraries for media, networking, etc</p>
-
-<p>See the introduction to GNOME libraries for more details.</p>
-</section>
-
-<section id="design">
-<title>Design</title>
-
-<p>Read the HIG</p>
+<section id="user-interface">
+<title>3. Create Your User Interface</title>
 
-<p>Use <link href="http://glade.gnome.org/";>Glade</link>.</p>
+<p>Creating your application's user interface is a good way to begin the development process. You can use Glade to construct your interface and follow the patterns found in the Human Interface Guidelines.</p>
 </section>
 
 <section id="code">
-<title>Code</title>
-
-<p>Use Anjunta and DevHelp.</p>
+<title>4. Code</title>
 
-<p>Follow the <link href="http://developer.gnome.org/gnome-devel-demos/unstable/";>tutorials</link>.</p>
+<p>X is the recommended language for developing GNOME applications. To familiarize yourself with its use in GNOME application development, check out <link href="http://developer.gnome.org/gnome-devel-demos/unstable/";>the tutorials</link> or browse the code of existing GNOME applications.</p>
 
-<p>Use version control. See the GNOME Developers <link href="https://live.gnome.org/Git/Developers";>Git guide</link>.</p>
+<p>GNOME provides a collection of libraries that can be used for application development. These give the ability to create user interfaces and provide common functionality for applications, such as reading and writing to files, playing and creating multimedia, storing and searching data, embedding web functionality and many other things. See <link type="guide" xref="library-intro">the introduction to GNOME libraries</link> for more details.</p>
 
-<p>Follow GNOME's style guides: <link href="ftp://ftp.mirrorservice.org/pub/GNOME/teams/docs/devel/guides/programming_guidelines/programming-guidelines.ps";>programming guidelines</link> and <link href="https://live.gnome.org/GnomeShell/Gjs_StyleGuide";>GNOME JavaScript style guide</link>.</p>
-
-<p>Look at our code - git.gnome.org.</p>
+<p>Following GNOME's style guides will help you to use share your code: <link href="ftp://ftp.mirrorservice.org/pub/GNOME/teams/docs/devel/guides/programming_guidelines/programming-guidelines.ps";>programming guidelines</link> and <link href="https://live.gnome.org/GnomeShell/Gjs_StyleGuide";>GNOME JavaScript style guide</link>.</p>
 </section>
 
-<section id="get-ready">
-<title>Get Ready to Distribute</title>
+<section id="test">
+<title>5. Test</title>
 
-<p>Get your application ready to be distributed to users.</p>
+<p>Test your application in order to eliminate bugs and make sure that it provides a high quality experience. Exercise all its functionality, and get a small group of users to try it out.</p>
 
+<p>In addition to functional testing, you should also:</p>
 <list>
-    <item><p>Ensure that your application is <link href="http://developer.gnome.org/gdp-handbook/stable/gnomedocsystem.html.en";>documented</link>.</p></item>
-    <item><p><link href="http://people.gnome.org/~malcolm/i18n/";>Internationalization</link> and <link href="http://people.gnome.org/~malcolm/i18n/";>Translation</link>.</p></item>
-    <item><p><link href="http://developer.gnome.org/accessibility-devel-guide/stable/";>Accessibility</link>.</p></item>
+    <item><p>Test for accessibility, including hi contrast mode and the screen reader. See <link href="https://live.gnome.org/Accessibility/Testing";>accessibility testing</link> for more details.</p></item>
+    <item><p>Try using the application using both right to left and left to right layout (this can be done by changing your language settings.</p></item>
+    <item><p>Ensure that your application works effectively for different screen sizes - see the HIG for guidelines on the target screen sizes.</p></item>
 </list>
 </section>
 
-<section id="test">
-<title>Test</title>
-
-<p>Testing is good.</p>
-
-<p>Is there a recommended way to debug?</p>
+<section id="get-ready">
+<title>6. Get Ready</title>
 
-<p>Things to test for:</p>
+<p>Get your application ready to be distributed to users.</p>
 
 <list>
-    <item><p>Accessibility features, including hi contrast mode and the screen reader. See <link href="https://live.gnome.org/Accessibility/Testing";>accessibility testing</link> for more details.</p></item>
-    <item><p>Left to right layout.</p></item>
-    <item><p>Different screen sizes - see the HIG for guidelines on the target screen sizes.</p></item>
+    <item><p>Write <link href="http://developer.gnome.org/gdp-handbook/stable/gnomedocsystem.html.en";>documentation</link> for your application, so that users can learn how to use it.</p></item>
+    <item><p>Ensure that all the text in your user interface can be <link href="http://people.gnome.org/~malcolm/i18n/";>translated</link>.</p></item>
 </list>
 </section>
 
 <section id="packaging">
-<title>Packaging</title>
+<title>7. Package</title>
 
-<p>File a bug with a distro or generate the packages yourself - see distro specific guidelines for this.</p>
+<p>Once your application is ready to be distributed to users, it is time to contact distributions in order to have it included in their releases. See distribution specific guidelines for this.</p>
 </section>
 
 </page>



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]