old-www/HOWTO/HighQuality-Apps-HOWTO/index.html

652 lines
8.4 KiB
HTML

<HTML
><HEAD
><TITLE
>Designing Integrated High Quality Linux Applications</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
"><LINK
REL="NEXT"
TITLE="Introduction"
HREF="intro.html"></HEAD
><BODY
CLASS="article"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="ARTICLE"
><DIV
CLASS="TITLEPAGE"
><H1
CLASS="title"
><A
NAME="AEN2">Designing Integrated High Quality Linux Applications</H1
><DIV
CLASS="authorgroup"
><A
NAME="AEN8"><H3
CLASS="author"
><A
NAME="AEN9"
>Avi Alkalay</A
></H3
><DIV
CLASS="affiliation"
><DIV
CLASS="address"
><P
CLASS="address"
><br>
avi at br.ibm.com<br>
avi at unix.sh<br>
</P
></DIV
><SPAN
CLASS="orgdiv"
>Senior IT and Software Architect :: Linux Market Developer<BR></SPAN
><SPAN
CLASS="orgname"
>IBM Linux Impact Team :: <A
HREF="http://ibm.com/linux"
TARGET="_top"
>ibm.com/linux</A
><BR></SPAN
></DIV
></DIV
><P
CLASS="copyright"
>Copyright &copy; 2002 by Avi Alkalay</P
><P
CLASS="pubdate"
>v2.1, 2002-08-24<BR></P
><DIV
CLASS="revhistory"
><TABLE
WIDTH="100%"
BORDER="0"
><TR
><TH
ALIGN="LEFT"
VALIGN="TOP"
COLSPAN="3"
><B
>Revision History</B
></TH
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 2.1</TD
><TD
ALIGN="LEFT"
>24 Aug 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Rewrite of the /opt /usr/local section.Cosmetics on graphical user interface and plugins sections.Fixed screens and programlistings width.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 2.0</TD
><TD
ALIGN="LEFT"
>07 May 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Final XML conversion. Files reorganization.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 1.9.9</TD
><TD
ALIGN="LEFT"
>20 Apr 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Included other document locations.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 1.98</TD
><TD
ALIGN="LEFT"
>14 Apr 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Title changed from "Creating" to "Designing".</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 1.97</TD
><TD
ALIGN="LEFT"
>09 Apr 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Converted to XML 4.1.2, and started to use real XSLT. Spell checked the english version.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 1.96</TD
><TD
ALIGN="LEFT"
>23 Mar 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Better HTML style sheets.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 1.95</TD
><TD
ALIGN="LEFT"
>17 Mar 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Last chapter: One Body, Many Souls. Created appendix. Still have to translate some words here and there.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 1.9</TD
><TD
ALIGN="LEFT"
>16 Mar 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Added universal software table with FHS.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 1.7</TD
><TD
ALIGN="LEFT"
>16 Mar 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Everything is now translated except some words.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 1.3</TD
><TD
ALIGN="LEFT"
>27 Feb 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Translated and reviewed the most important section of the article: The /opt and /usr/local section.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 1.2</TD
><TD
ALIGN="LEFT"
>23 Feb 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>English translation at 65%. Doing some corrections to potuguese version also.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 1.1</TD
><TD
ALIGN="LEFT"
>17 Feb 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Started english translation.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 1.0</TD
><TD
ALIGN="LEFT"
>16 Feb 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>First final version of proposed skeleton.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 0.9.6</TD
><TD
ALIGN="LEFT"
>16 Feb 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Finished Plugin chapter.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 0.9.5</TD
><TD
ALIGN="LEFT"
>15 Feb 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Finished chapter about boot and subsystems.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 0.9.4</TD
><TD
ALIGN="LEFT"
>14 Feb 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Finished chapter describing the boot process.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 0.9.3</TD
><TD
ALIGN="LEFT"
>08 Feb 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Text and style updates.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 0.9.2</TD
><TD
ALIGN="LEFT"
>07 Feb 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>Text updates.</TD
></TR
><TR
><TD
ALIGN="LEFT"
>Revision 0.9</TD
><TD
ALIGN="LEFT"
>06 Feb 2002</TD
><TD
ALIGN="LEFT"
>Revised by: avi</TD
></TR
><TR
><TD
ALIGN="LEFT"
COLSPAN="3"
>First translation to DocBook.</TD
></TR
></TABLE
></DIV
><HR></DIV
><DIV
CLASS="TOC"
><DL
><DT
><B
>Table of Contents</B
></DT
><DT
>1. <A
HREF="intro.html"
>Introduction</A
></DT
><DT
>2. <A
HREF="userfriendly.html"
>User Friendly: Guaranteed Success</A
></DT
><DD
><DL
><DT
>2.1. <A
HREF="userfriendly.html#installAndUse"
>Embrace the <EM
>Install-and-Use</EM
> Paradigm</A
></DT
></DL
></DD
><DT
>3. <A
HREF="software.html"
>The Four Universal Parts of Any Software</A
></DT
><DD
><DL
><DT
>3.1. <A
HREF="software.html#software.example"
>Practical Examples</A
></DT
><DT
>3.2. <A
HREF="software.html#separe"
>The Importance of Clear Separation Between Four Parts</A
></DT
><DT
>3.3. <A
HREF="software.html#bodysouls"
>One Body, Many Souls</A
></DT
></DL
></DD
><DT
>4. <A
HREF="fhs.html"
>Linux Directory Hierarchy: Oriented to the Software Parts</A
></DT
><DD
><DL
><DT
>4.1. <A
HREF="fhs.html#fhs.fhs"
><SPAN
CLASS="acronym"
>FHS</SPAN
> Summary</A
></DT
><DT
>4.2. <A
HREF="fhs.html#newtable"
>Examples Using the <SPAN
CLASS="acronym"
>FHS</SPAN
></A
></DT
><DT
>4.3. <A
HREF="fhs.html#noopt"
>Developer, Do Not Install in <TT
CLASS="filename"
>/opt</TT
> or <TT
CLASS="filename"
>/usr/local</TT
> !</A
></DT
></DL
></DD
><DT
>5. <A
HREF="plugin.html"
>Provide Architecture for Extensions and Plugins</A
></DT
><DD
><DL
><DT
>5.1. <A
HREF="plugin.html#plugin.concept"
>Abstracting About Plugins</A
></DT
></DL
></DD
><DT
>6. <A
HREF="rpm.html"
>Allways Provide RPM Packages of Your Softwares</A
></DT
><DD
><DL
><DT
>6.1. <A
HREF="rpm.html#module"
>Software Package Modularization</A
></DT
></DL
></DD
><DT
>7. <A
HREF="security.html"
>Security: The Omnipresent Concept</A
></DT
><DT
>8. <A
HREF="gui.html"
>Graphical User Interface</A
></DT
><DD
><DL
><DT
>8.1. <A
HREF="gui.html#kdegnome"
>KDE, GNOME, Java or Motif?</A
></DT
><DT
>8.2. <A
HREF="gui.html#webgui"
>Web Interface: Access from Anywhere</A
></DT
><DT
>8.3. <A
HREF="gui.html#wizard"
>Wizards and Graphical Installers</A
></DT
></DL
></DD
><DT
>9. <A
HREF="boot.html"
>Starting Your Software Automatically on Boot</A
></DT
><DD
><DL
><DT
>9.1. <A
HREF="boot.html#boot.init"
>From <SPAN
CLASS="acronym"
>BIOS</SPAN
> to Subsystems</A
></DT
><DT
>9.2. <A
HREF="boot.html#boot.runlevel"
>Runlevels</A
></DT
><DT
>9.3. <A
HREF="boot.html#boot.subs"
>The Subsystems</A
></DT
><DT
>9.4. <A
HREF="boot.html#boot.script"
>Turning Your Software Into a Subsystem</A
></DT
><DT
>9.5. <A
HREF="boot.html#boot.install"
>Packaging Your Boot Script</A
></DT
></DL
></DD
><DT
>A. <A
HREF="redhat.html"
>Red Hat, About the Filesystem Structure</A
></DT
><DT
>B. <A
HREF="about.html"
>About this Document</A
></DT
></DL
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="intro.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Introduction</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>