This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
eiffel:hello:hello2:start [2018/01/01 04:40] jonathan |
eiffel:hello:hello2:start [2018/12/28 20:53] (current) jackie [Step1: Create a new project] |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Lab0: Calendar===== | ||
+ | |||
+ | |||
If you get stuck, be sure to view the [[https://wiki.eecs.yorku.ca/project/eiffel/videos:start|Instructional Videos]]. | If you get stuck, be sure to view the [[https://wiki.eecs.yorku.ca/project/eiffel/videos:start|Instructional Videos]]. | ||
+ | |||
+ | For Lab0 below (Calendar example) view accompanying Video [[https://youtu.be/woVYZsVV8F8|here]] | ||
====== First Project Using the IDE ====== | ====== First Project Using the IDE ====== | ||
Line 7: | Line 12: | ||
If you have met the above preconditions, you should be able to start a new Eiffel project from scratch. Start Eiffelstudio, and setup a new project "calendar" as shown in the steps below: | If you have met the above preconditions, you should be able to start a new Eiffel project from scratch. Start Eiffelstudio, and setup a new project "calendar" as shown in the steps below: | ||
- | {{:eiffel:hello:hello2:calendar.png?700|}} | + | ===== Step1: Create a new project ===== |
+ | Create a new ''calendar'' project at the terminal: [[:eiffel:starter:|Eifflel 18.11 Void Safe Starter Project]]: | ||
- | 1. and 2. shows the project after creating a new project with the name ''calendar'' at some location on your file system. All new clusters (in folders) must be given a path using **relative notation**, otherwise your projects will not compile when submitted. | + | <code> |
- | + | red> eiffel-new | |
- | 3. Make the ''calendar'' cluster non-recursive and select ''Complete Void Safety'' and ''Standard syntax'' (not the default in Eiffel 17.05, but it may become the default in later versions). | + | New Eiffel void-safe project name: calendar |
- | + | red> ls | |
- | 4. In the cluster ''calendar'' add the sub-clusters ''root'', ''model'' and ''test''. **The path is relative to where the EC file is**, i.e. ''./root'', ''./model'', ''./test''. Move the root class APPLICATION to the root cluster (using [[https://www.eiffel.org/doc/eiffelstudio/Pick-and-drop%20mechanism|pick and drop]]). | + | calendar |
- | + | </code> | |
- | Ensure that you have added the [[;eiffel;espec:|ESpec library]]. | + | |
- | + | ||
- | 5. Add a TEST class in the ''tests'' cluster and CALENDAR class in the ''calendar'' cluster. | + | |
Check your directory structure to see that the file system mirrors the cluster hierarchy. | Check your directory structure to see that the file system mirrors the cluster hierarchy. | ||
Line 32: | Line 35: | ||
</code> | </code> | ||
+ | The new project is in the folder ''calendar''. | ||
- | Also, take a look at the XML ECF file that you have been editing via the Settings. | + | estudio18.11 calendar/calendar.ecf& |
+ | |||
+ | |||
+ | Also, take a look at the Settings and the XML/ECF file to see the Void safe settings. | ||
+ | |||
+ | To add a new cluster or class see [[/eiffel/faq/cluster|FAQ: Adding a new cluster/class]] | ||
===== Calendar Class ===== | ===== Calendar Class ===== | ||
Line 110: | Line 119: | ||
* How can we compare two dates? | * How can we compare two dates? | ||
+ | ===== Using the debugger ===== | ||
+ | |||
+ | When tests fail, it is essential to be able to use the debugger to track down the error. | ||
+ | |||
+ | |||
+ | [[https://www.youtube.com/watch?v=X2L_gyB0eAU&index=5&list=PLGoQo5eIwvcBYwWdMleIk5PU4n7lVnk-E|Using Estudio Debugger]] | ||
+ | |||
+ | This is part of a series of instructional videos: | ||
+ | [[https://wiki.eecs.yorku.ca/project/eiffel/videos:start|Eiffel instructional videos]] | ||
===== Abstraction ===== | ===== Abstraction ===== | ||