Jungleford's Home BlogJava分舵

Java技术研究,兼探讨历史话题

BlogJava 首页 新随笔 联系 聚合 管理
  24 Posts :: 0 Stories :: 53 Comments :: 0 Trackbacks
经过jungleford几个月业余时间的设计、编码、加工和文档化之后,时钟和日历的可视化组件库SmartCalendar终于发布到了sourceforge上,这是本人做的第一个(估计也可能是最后一个)比较正规化的软件,虽然目前规模很小,但个人觉得还是比较有意义的:某种程度上为JDK没有GUI日历组件的问题提供了一种可选的解决方案——当你在用JFileChooserJColorChooser的时候,或许会纳闷怎么没有日期选择框呢?当然,这个工作早已有人做了,我的想法只是提高它的可重用性和规范化一些;锻炼了一些建模能力,理解了一些设计模式的思想;熟悉了一些软件设计规范化和文档化的过程;当然,嘿嘿,也锻炼了一把英语作文。
 
您可以从https://sourceforge.net/projects/smartcalendar/访问到这个项目的主页。下面是这一版本的intro:
 
============================================================
 
-------------------------------------

          SMART CALENDAR

     for Java(TM) Applications

-------------------------------------

************
* CONTENTS *
************

0. History

1. Introduction

2. Features

3. Documentation and API Specification

4. License and Announcement

5. Acknowledgements

6. Contact Me




0. HISTORY
----------

The latest version of availability is SmartCalendar 0.1 beta.

- SmartCalendar 0.1 beta [Feb 21th, 2006]



1. INTRODUCTION
---------------

1.1 Why do?

As we know, class "Date" and "Calendar" in package "java.util" have provided plenty of functions to deal with the requirements related with time and calendar computation. However, we still feel a bean of GUI form in current JDK library is missing to help us fulfil the same kind of tasks, which is exactly my motivation to develop SmartCalendar.

1.2 What is it?

SmartCalendar is a library of graphical calendar beans, including calculagraph and calendar tools. It is purely Java based,and develop environments are:

- SUN Java(TM) 2 Platform Standard Edition 5.0 Development Kit (JDK 5.0)

- Eclipse Software Development Kit (SDK) 3.1 with Visual Editor

1.3 Pre-Requisites

JRE or JDK 5.0 or above and compatible environments. You can get them from

http://java.sun.com/j2se/1.5.0/download.jsp

1.4 Installation

- Download the latest version from http://SourceForge.net/. Current archive is

  smartcalendar-0.1beta-bin.zip .............. only binary code and documents

  smartcalendar-0.1beta-src.zip .............. only source code and documents

  smartcalendar-0.1beta-doc.zip .............. only documents

  smartcalendar-0.1beta-all.zip .............. full codes, including binary code, source code, and documents

- Decompress the archive into an arbitrary directory, e.g. "SmartCalendar":

  For Windows OS, use Winzip or WinRAR or similar tools.

  For UNIX OS, use the command "unzip":

      unzip smartcalendar-0.1beta-all.zip -d /SmartCalendar

  Of course you can use OS independent command "jar" as:

      jar xvf smartcalendar-0.1beta-all.zip -C SmartCalendar/

  then the structure is:

  SmartCalendar/
    |
    |_smartcalendar-0.1beta/
        |
        |_bin/
        |   |_   ........................... the binary codes
        |
        |_doc/
        |   |_   ........................... the documents
        |
        |_example/
        |   |_   ........................... some sample codes
        |
        |_src/
        |   |_   ........................... the source codes
        |
        |_build.xml   ...................... ANT build file
        |
        |_smartcalendar.jar   .............. the JAR archive of this library
        |
        |_ChangeLog.txt   .................. the log file of changes
        |
        |_LICENSE.txt   .................... the LGPL file
        |
        |_README.txt   ..................... this file
        |
        |_README-zh_cn.txt   ............... a Chinese version for this file
        |
        |_ReleaseNote.txt   ................ the release note

  In smartcalendar-0.1beta-bin.zip, smartcalendar-0.1beta-src.zip, or smartcalendar-0.1beta-doc.zip, the directory structure is a little different. For example, in smartcalendar-0.1beta-src.zip, you can use the command

      ant

to rebuild the project, of course, you must add a parameter in your environment variable list to indicate where the apache ANT program is. For convenience, I wrote two scripts, and execute the batch file

      build.bat

on Windows, or

      chmod +x build.sh
      ./build.sh

on UNIX-like OS.

- Setup your environment variables (may be optional, depending on your JRE installation way):

  JAVA_HOME ----------> <your JRE or JDK dir>

  ClassPath ----------> .;%JAVA_HOME%\lib
                                 or
                                 .;%JAVA_HOME%\jre\lib

  Path ---------------> %JAVA_HOME%\bin

- Launch the sample codes:

  For Windows OS, open a command console, enter:

      cd SmartCalendar\smartcalendar-0.1beta\example
      run.bat

  For UNIX OS:

      cd SmartCalendar/smartcalendar-0.1beta/example
      chmod +x run.sh
      ./run.sh

If you want to use this library in your own program, just copy smartcalendar.jar to your workspace, and add it to your classpath.



2. FEATURES
-----------

Till now, the development of SmartCalendar is still ongoing, but it already has some basic functionalities including:

- A suite of graphical clock interfaces:

  * Digital-type clock bean

  * Analog-type clock bean and entire extendable APIs

- Calendar interfaces:

  * Month calendar interface and default implementation

  * Year calendar bean, actually it is reusage of month calendar bean

For more details, please refer to "doc/manual.html".



3. DOCUMENTATION AND API SPECIFICATION
--------------------------------------

Manuals and APIs in JavaDoc format are archived in directory "doc/". All of them are HTML pages.



4. LICENSE AND ANNOUNCEMENT
---------------------------

This project is licensed under the terms defined in LICENSE.txt, it is a copy of GNU Lesser General Public License (LGPL).

SmartCalendar is an open source project. The source code of the software is available upon requests, but must be marked with "Powered by Samuel Lee" whenever it is redistributed, or "With contributions from Samuel Lee" whenever it is modified. The author will NOT be responsible for legal liabilities caused by any redistribution with or without any modification.

CAUTION: THIS SOFTWARE MUST NOT BE USED FOR ANY COMMERCIAL PURPOSE WITHOUT THE AUTHOR'S PERMISSION! ANY VIOLATION MAY BE FACED WITH LITIGATION!



5. ACKNOWLEDGEMENTS
-------------------

The codes written by Mitch Goldstein give me lots of ideas and hints, so that I used and modified some of them in my own work. If you are interested in his works, please follow this link:

http://www-128.ibm.com/developerworks/edu/j-dw-java2d-i.html

And thanks to my friend Mr. Rong, he revised this document and gave me many advices.



6. CONTACT ME
-------------

If you find any bugs or have any suggestions, please feel free to inform me, and I will appreciate your valuable and selfless help. You can get in touch with me by the following e-mail address:

smartcalendar@gmail.com

Thanks for all, and all the luck in the world! Sincerely and truly,

                                              SAMUEL LEE

Copyright 2006 The SmartCalendar Project, Samuel Lee
posted on 2006-04-05 21:59 jungleford 阅读(2355) 评论(0)  编辑  收藏 所属分类: 咖啡屋 - Java 技术研究

只有注册用户登录后才能发表评论。


网站导航: