[gnome-devel-docs/dx-hackfest] Add a page for Philosophy of the GNOME Platform
- From: Federico Mena Quintero <federico src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-devel-docs/dx-hackfest] Add a page for Philosophy of the GNOME Platform
- Date: Sat, 2 Mar 2013 00:16:19 +0000 (UTC)
commit 22ef697c8396148e089284e15ea5f18b977819fb
Author: Federico Mena Quintero <federico gnome org>
Date: Fri Mar 1 18:09:41 2013 -0600
Add a page for Philosophy of the GNOME Platform
Signed-off-by: Federico Mena Quintero <federico gnome org>
platform-overview/C/index.page | 2 +-
platform-overview/C/philosophy.page | 39 +++++++++++++++++++++++++++++++++++
2 files changed, 40 insertions(+), 1 deletions(-)
---
diff --git a/platform-overview/C/index.page b/platform-overview/C/index.page
index dd556d2..9a92252 100644
--- a/platform-overview/C/index.page
+++ b/platform-overview/C/index.page
@@ -41,7 +41,7 @@ software to meet and exceed your users' expectations.</p>
along with links to reference documentation on each part of the
platform.</p>
-<links type="topic" style="toronto" groups="foundations">
+<links type="topic" style="toronto" groups="foundations philosophy">
<title>Foundations of Gnome</title>
</links>
diff --git a/platform-overview/C/philosophy.page b/platform-overview/C/philosophy.page
new file mode 100644
index 0000000..16865fb
--- /dev/null
+++ b/platform-overview/C/philosophy.page
@@ -0,0 +1,39 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="philosophy">
+
+<info>
+ <link type="guide" xref="index" group="philosophy"/>
+ <desc>Philosophy of the GNOME platform</desc>
+</info>
+
+<title>Philosophy of the GNOME platform</title>
+
+<p>The first thing to mention is that the GNOME as a platform does not
+have a Grand Unified Vision, or a grand plan, or anything like
+that. GNOME has grown organically over time, in a more or less
+well-controlled way.</p>
+
+<p>The GNOME project started in August 1997 as a tiny collection of
+libraries in addition to the existing GTK+ widget toolkit. Over time,
+GNOME adopted external libraries or created new ones to meet various
+needs. In turn, libraries or parts of them have been deprecated and
+replaced as our ongoing gestalt of "best practices" has changed. This
+does not mean that GNOME developers change their minds capriciously
+(most of the time, anyway!), but that as the whole platform evolves,
+different things may be seen to fit better with it.</p>
+
+<p>Experience has taught us some things that work well in the context
+of GNOME. For example, libraries that are based on GLib's <link
+xref="gobject">GObject system</link> are easier to learn for GNOME
+programmers than custom object systems. People can then assume
+certain conventions for memory management and certain patterns such as
+methods and signals. Long-running operations that are made
+asynchronous, and that have an API that supports GLib's
+<code>GCancellable</code> objects for cancellation, are more
+convenient than libraries which force the programmer to create
+threads by hand.</p>
+
+<p>FIXME: Pattern of moving things to the right place in the stack.</p>
+
+</page>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]